线程池,异步,协程,我干成了,有体会,可以交流。
我猜你在做一个大并发的服务器。
这种东西是以线程池为基础的,以事件机制作为调度器,我是用epoll,所有工作线程都在等待epoll分配工作。
当一个事件被激活,就有一个线程抓住了这个任务。之后需要IO。同步呢?异步呢?都有需求。这个线程就需要调用一些工具来解决IO问题。因为已经是在线程里了,所以这个工具不应该再管线程的事,这种多管闲事的工具就别用了,找一个纯粹干活的就行。
我用过回调函数的异步,最后还是用协程异步比较好,可以以同步的方式进行异步操作,IO需要等待时就yield,线程跑掉为别人服务,这个任务挂起在epoll,直到具备IO条件被激活。
https://www.newsmth.net/nForum/#!article/CPlusPlus/433004
这个帖对其中存在的问题有详细讨论。
【 在 speedboy2998 的大作中提到: 】
: 下面是一个线程池。
:
--
修改:ylh1969 FROM 221.218.60.*
FROM 221.218.60.*