【发布时间】:2010-10-02 03:45:16
【问题描述】:
我为 Mac 编写了一个应用程序,它被设计为状态栏项目。但是,当用户从状态栏打开菜单时,主运行循环会被阻塞,直到它关闭。由于此应用程序在套接字上响应消息,因此在菜单打开时它无法执行任何操作是一个问题。
我尝试从单独的线程设置状态项并将套接字调度到不同的线程,但没有骰子。有什么好办法解决吗?
更新:
我现在已经解决了这个问题。我使用的是NetSocket 套接字包装器,它的异步特性使得在不同的线程上打开和观看变得非常困难。我切换到SmallSockets(另一个Objective-C 套接字包装器),因为它是同步的,所以我能够打开一个套接字并直接在一个单独的线程上观察它。
【问题讨论】:
标签: objective-c macos nsthread nsrunloop