Получить отправителя сообщения для NSInvocation
Как получить отправителя сообщения, завернутого в NSInvocation?
Я нахожусь в объекте, и я только что получил вызов в моем forwardInvocation:
, Есть ли способ узнать, кто отправил мне сообщение в первую очередь?
1 ответ
Решение
Нет. Информация об отправителе недоступна (если вы явно не добавите sender:self
аргумент).
См. Также эту тему http://www.cocoabuilder.com/archive/cocoa/194746-is-the-sender-of-an-obj-method-implied-in-the-destination-method.html:
Это явно не доступно, и вы не можете последовательно раскручивать стек, чтобы понять это. Нет даже гарантии, что "отправитель" действительно является объектом Objective-C; это также легко может быть закрытие функции или FFI в случае различных языковых мостов.
b.bum