io_service为用户的异步I/O对象提供了一些核心的I/O函数,包括:
· boost::asio::ip::tcp::socket
· boost::asio::ip::tcp::acceptor
· boost::asio::ip::udp::socket
· deadline_timer。
io_service类也包含一些工具用来为开发者用户提供异步服务。
线程安全:
特别对象:safe.
分享对象(shared objects):Safe 和指定的reset() 和 notify_fork()函数,当run(), run_one(), poll() 或者 poll_one()还未运行结束的时候调用reset()的结果将会是未定义行为,
在任何io_service函数或者基于或者关联了io_service的函数在另外一个线程中被调用的时候,notify_fork()函数不应该被调用。
同步和异步操作:
io_ service函数run(),run_one(),poll()或者poll_one()必须在同步操作开始之前被调用,