【发布时间】:2014-03-30 14:47:29
【问题描述】:
如何获取包裹在 `NSInvocation 中的消息的发送者?
我在一个对象中,我刚刚在我的forwardInvocation: 中收到了一个调用。
有什么方法可以知道是谁给我发了这条消息?
【问题讨论】:
-
您可能无法将“发送者”作为对象获取,但理论上可以获取调用函数,因为它应该位于堆栈或链接寄存器中的某个位置。不过,在 95% 的应用程序中可能没有用。
-
嗯...该功能是什么样的,是通用的还是我可以从中提取有关发件人的一些信息。
-
你可以使用 NSThread 的
callStackSymbols作为起点。
标签: objective-c cocoa objective-c-runtime message-passing nsinvocation