Здравствуйте, pvirk, Вы писали:
P>Наверное они просто не стали заморачиваться с синхронизацией вывода на консоль. Смысл же примера, как я понимаю, не в этом, а в использовании передачи/приёма через bounded_buffer.
Я тоже так подумал вначале, но во-первых: стыдно же, а во-вторых: в соседнем примере tennis.cpp есть такой код:
...
boost::thread::sleep(xt);
{
boost::mutex::scoped_lock lock(mutex);
std::cout << "---Noise ON..." << std::endl;
}
for (int i = 0; i < 1000000; ++i)
...
Здесь, как видите, все сделано верно: раз пишем в поток, то лочим его.