C++ “привет мировой” пример программы мишени Повышения

В гипотетическом театре,

он называется Мьютекс , если только один человек позволяет смотреть пьесу
, он называется Семафор , если Количество зрителей позволяет смотреть спектакль. Если кто-либо покинет Театр во время спектакля, то другой человек может посмотреть спектакль.
он называется CountDownLatch , если никто не имеет права входить до тех пор, пока каждый человек не покинет театр. У каждого человека есть свобода воли покинуть театр.
это называется Cyclicbarrier , если театр не запустится, пока каждый человек не войдет в театр. Здесь шоумен не может начать шоу, пока все люди не войдут и не схватят место. Как только воспроизведение закончится, тот же барьер будет применяться для следующего шоу

Здесь человек - это Нить, игра - это ресурс.

12
задан Piotr Dobrogost 9 July 2009 в 21:07
поделиться

1 ответ

На основании справки, полученной из вопроса, связанного с Джоном:

#include <boost/iostreams/tee.hpp>
#include <boost/iostreams/stream.hpp>
#include <fstream>
#include <iostream>

using std::ostream;
using std::ofstream;
using std::cout;

namespace bio = boost::iostreams;
using bio::tee_device;
using bio::stream;

int main()
{
    typedef tee_device<ostream, ofstream> TeeDevice;
    typedef stream<TeeDevice> TeeStream;
    ofstream ofs("sample.txt");
    TeeDevice my_tee(cout, ofs); 
    TeeStream my_split(my_tee);
    my_split << "Hello, World!\n";
    my_split.flush();
    my_split.close();
}
26
ответ дан 2 December 2019 в 05:55
поделиться
Другие вопросы по тегам:

Похожие вопросы: