如题,使用 Python,怎样在一个 worker 线程中让 main 线程运行某个函数?或者达到相似的效果。
之前研究使用 Queue 这个模块,但是好像并不能达到想要的效果。
最后附注:问题本身可能是个伪命题,主要是想知道怎样达到类似的效果。是不是需要实现(使用)一个类似 asyncio BaseEventLoop 或者 tonador 中 IOLoop 这样的事件循环?
如题,使用 Python,怎样在一个 worker 线程中让 main 线程运行某个函数?或者达到相似的效果。
之前研究使用 Queue 这个模块,但是好像并不能达到想要的效果。
最后附注:问题本身可能是个伪命题,主要是想知道怎样达到类似的效果。是不是需要实现(使用)一个类似 asyncio BaseEventLoop 或者 tonador 中 IOLoop 这样的事件循环?
4 回答970 阅读
2 回答2.2k 阅读
1 回答578 阅读
1 回答714 阅读
1 回答694 阅读
1 回答522 阅读
643 阅读
不知理解是否正确,这应该就是个线程间通信问题。
如果用Queue的话,worker线程可以往某个Queue里面push消息,main线程循环从Queue里面pull消息处理,如果拿到特定的消息就调用某个函数。