单线程组合asio与qt

单线程组合asio与qt

qt event 与asio io_service.run的整合
我也尝试过使用过多线程,但是使用了boost中的shared_ptr,使得程序分配的变量的生命周期变成异常繁琐。因此决定直接在单线程里面使用。因为boost的asio中的回调函数必须和io_service的run函数在一个线程中。
基本思路:
Qt的线程必须为主线程。因此在创建的gui主对象中,使用一个QTimer变量,使其的间隔时间为0,触发的信号槽中调用io_service的poll或者poll_one函数。

你可能感兴趣的:(单线程组合asio与qt)