На сервере заводится отдельный поток на каждого клиента, знаю что плохо, но меня это сейчас устраивает. Камень нагружется до 50%. Нужно кроссплатформенное решение, которое бы убрало эту проблему. Boost использовать можно и нужно, заранее спасибо.
В потоке обработки клиента сейчас такой бред:
while(true)
{
if (!socket->available())
{
std::this_thread::sleep_for(std::chrono::milliseconds(0));
continue;
}
//работаем
}