Hello, When I run the following code on windows, some threads are created, presumably by winsock. These threads are "named" _TppWorkerThread. This does not happen on linux. These threads do not stop when all the boost objects go out of scope, but I wish they did. Q1: Am I doing something wrong? Q2: Is there a boost way for me to stop these threads? Thank you, Chris int main() { { boost::asio::io_service DummyIoService; boost::asio::ip::tcp::resolver Resolver(DummyIoService); Resolver.resolve( boost::asio::ip::tcp::resolver::query("localhost", "3000")); } // At this point, there are three extra threads running: // // _TppWorkerThread@4 _ZwWaitForWorkViaWorkerFactory@8 // _TppWorkerThread@4 _ZwWaitForWorkViaWorkerFactory@8 // _TppWaiterpThread@4 _ZwWaitForMultipleObjects@20 return 0; }