音频队列回调函数必须是 C 风格函数吗?或者它可以是一种客观的 C 风格方法吗?
音频队列回调函数必须是 C 风格函数吗?或者它可以是一种客观的 C 风格方法吗?
Does an audio queue callback function have to be a C style function? Or can it be an objective C style method?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
完全取决于API;如果 API 调用函数、块或方法,那么您必须使用它们。
只要回调函数类型类似于:
并且用于设置回调的 API 类似于:
那么您可以:
那么:
我建议您在设置回调时
retain
self 并且仅当您拆除回调时,用release
来平衡它。Depends entirely on the API; if the API calls for a function, block or method, that is what you must use.
As long as the callback function type is something like:
And the API for setting up the callback is something like:
Then you can:
Then:
I would suggest that you
retain
self when setting up the callback and only balance it with arelease
when you tear down the callback.CoreAudio(包括 AudioQueueServices)没有 ObjectiveC 接口 - 纯 C 是直接与 CoreAudio 接口的答案。
然而,您可以创建一些调用单个 ObjectiveC 对象方法的包装 C 函数。
CoreAudio (including AudioQueueServices) does not have an ObjectiveC interface - pure C is the answer for directly interfacing with CoreAudio.
You could however create some wrapping C-functions calling a singleton ObjectiveC object method.