我正在用 Python 为基于 S60 的诺基亚设备开发蓝牙游戏。事实证明,S60 中的蓝牙插座相当棘手。有两个原因:

  1. 我无法在Python中对多个从属套接字进行主控,听说它无法在Python中完成,所以我已经离开了这个并且无论如何也不做。

  2. 另一部分是我不能只在单独的线程中监听套接字并继续正常执行我的应用程序。我在这里尝试了示例代码:

http://pastebin.com/f76189841

请注意,我在线程之间共享套接字时使用了 ao_callgate()。


该帖子(仍未得到答复:-( )可以在这里找到:http://discussion.forum.nokia.com/forum/showthread.php?t=162260

有帮助吗?

解决方案

我了解了一些有关 Active 对象的知识。读写请求被发送到蓝牙服务器。但一次只能发出一个请求。

我创建一个新线程(例如 t1),并使用 ao_e32.callgate() 在主线程上下文中调用它。我在那里等待传入的消息。当我想通过蓝牙发送消息时,我应该停止该线程,发送消息并再次启动该线程。但现在的问题是如何在 Python 中停止线程。

附:S60 的 Python 中提供了 thread 模块,并且可以使用 PC 版 Python 中的 threading.py 在其上安装线程模块

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top