我有一个 C 函数(音频队列服务中的回调函数),我想向自己发送消息。怎么做?
如果我输入[self message],则会出现错误:
Use of undeclared identifier 'self'
您不会在实时回调中执行 objc 消息,例如音频。原因是 objc 消息传递不是恒定时间,并且可能会锁定,从而导致错过最后期限,从而导致音频丢失。静态或动态(virtual
) C++ 调用和 C 函数调用当然是恒定时间的,并且适合实时上下文。
如果不是实时/音频回调,那么一种选择是通过self
作为用户信息或上下文参数:
void SomeCallback(t_stuff* const stuff, void* userInfo) {
MONClass * Self = (MONClass*)userInfo;
[Self doSomething];
}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)