есто того, чтобы порождать нов
Автор admin Суббота, 27 июня 2009 11:32
есто того, чтобы порождать новый поток для каждой задачи). //: Cll:TestTQueue.cpp {RunByHand} //{L} ZThread linclude
class TQueue { ZThread::Mutex
Автор admin Суббота, 27 июня 2009 11:32
class TQueue { ZThread::Mutex lock: ZThread:Condition cond: std::deque
al() для активизации программн
Автор admin Суббота, 27 июня 2009 11:32
al() для активизации программного потока. Этот пример отличается от предыдущего тем, что в нем (по крайней мере, на концептуальном уровне) производятся объекты («тосты»). Частота создания объектов подвержена случайным отклонениям, чтобы в работе программы участвовал фактор неопределенности. Но при запуске выясняется, что автомат не работает, потому что многие тосты так и остаются в своем исходном виде: не намазываются ни маслом, ни джемом. Решение проблем многопоточности с помощью очередей Многие проблемы многопоточности связаны с необходимостью последовательного выполнения задач. Программа ToastOMatic.cpp должна не только последовательно обрабатывать создаваемые тосты, но и работать с одним тостом, не беспокоясь о том, что следующий тост тем временем упадет на пол. Нередко проблему удается решить использованием очереди с синхронизированным доступом к элементам: //: Cll:TQueue.h #i fndef TQUEUE_H #define TQUEUE_H #i nclude
Последние комментарии