Наверное они просто не стали заморачиваться с синхронизацией вывода на консоль. Смысл же примера, как я понимаю, не в этом, а в использовании передачи/приёма через bounded_buffer.
Здравствуйте, 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)
...
Здесь, как видите, все сделано верно: раз пишем в поток, то лочим его.
Здравствуйте, NoHate, Вы писали:
NH>И эти люди не разрешают мне ковырять в носу? (С) NH>Может я что не понимаю? Это же пример того, как правильно с потоками роботать! NH>Версия: boost 1.34.1