根据升压文档,具有多线程调用io_service::run()建立了IO服务可用于执行异步任务的线程池。它明确规定,已加入池中的所有线程都被视为等同。

这是否意味着它是不可能有一个单独的线程从一个插座和一个单独的一个用于写读书吗?如果可能的话,我将如何实现这一点?

有帮助吗?

解决方案

调用io_service::run()任何线程可以被用来调用异步处理程序。但你不能明确指定哪些线程执行操作的哪种类型。例如,如果你调用io_service对象:: run()的2个后台线程,而你打电话给socket::async_sendsocket::async_receive在主线程,你的处理器将在任何后台线程当前可用来执行。所以,是的,所有的线程都基本上认为是等价的,并且可用于任何异步操作。

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