有没有办法从主线程读取 AppKit 中的键盘输入?我已经设法使用它来做到这一点,CGEventTapCreate
但不幸的是它需要我不想请求的权限。有没有办法从主线程读取本地输入?
(用例是键盘驱动的实时音频应用程序,其中图形不应阻塞输入->音频管道)
我尝试过使用addLocalMonitorForEventsMatchingMask
,但似乎处理程序仅在主线程上调用,即使我在单独的线程中设置了运行循环。提前致谢!
有没有办法从主线程读取 AppKit 中的键盘输入?我已经设法使用它来做到这一点,CGEventTapCreate
但不幸的是它需要我不想请求的权限。有没有办法从主线程读取本地输入?
(用例是键盘驱动的实时音频应用程序,其中图形不应阻塞输入->音频管道)
我尝试过使用addLocalMonitorForEventsMatchingMask
,但似乎处理程序仅在主线程上调用,即使我在单独的线程中设置了运行循环。提前致谢!
我相信答案是“否”,因为键盘输入的入口 - 假设您不尝试盗用辅助功能事件点击路线 - 要么是您对相同的内容的覆盖,并且按照Apple“sendEvent:
-[NSApplication sendEvent:]
消息从主事件循环(run 方法)”。这可能会是一个更重的提升,但可能合适的解决方案是将图形移出主线程。或者至少将这项工作分解成非常小的块,以便您可以从
sendEvent:
.