Повышение , вероятно, имеет большую часть того, что вам нужно с точки зрения потоков и сетей В / В.
Вы также можете найти Qt хорошей альтернативой. Он также имеет библиотеки потоков и сетевых библиотек и имеет гораздо более простую в использовании и понимании модель программирования, управляемую событиями, с использованием цикла выполнения. Система сигналов / слотов Qt очень проста в использовании и идеально подходит для сетевого демона / сервиса (Boost также включает в себя систему сигнал / слот , но она сложнее в использовании и не включает в себя цикл обработки событий; вы должны сверните свое собственное использование некоторой библиотеки событий). Будучи кроссплатформенной библиотекой, Qt может справиться со многими проблемами при соединении ментальной модели Unix (OS X и Linux) и Windows для процессов, файловых систем и т. Д.
Что касается модульного тестирования, меня очень порадовала библиотека модульного тестирования Google C ++ под названием googletest (хотя и Boost, и Qt также имеют встроенные системы модульного тестирования). Он работает на всех указанных вами платформах. Я проделал большую работу с googletest над кроссплатформенными проектами Qt и нашел его вполне удовлетворительным.