コード例 #1
0
ファイル: bounded_buffer.cpp プロジェクト: LancelotGHX/Simula
void sender() {
    int n = 0;
    while (n < 100) {
        buf.send(n);
        std::cout << "sent: " << n << std::endl;
        ++n;
    }
    buf.send(-1);
}
コード例 #2
0
ファイル: condition.cpp プロジェクト: albanie/ThesisCode
void sender() {
    int n = 0;
    while (n < 100) {
        buf.send(n);
        {
            boost::mutex::scoped_lock io_lock(io_mutex);
            std::cout << "sent: " << n << std::endl;
        }
        ++n;
    }
    buf.send(-1);
}
コード例 #3
0
void sender() {
    int n = 0;
    while (n < 1000000) {
        buf.send(n);
        if(!(n%10000))
        {
            boost::unique_lock<boost::mutex> io_lock(io_mutex);
            std::cout << "sent: " << n << std::endl;
        }
        ++n;
    }
    buf.send(-1);
}
コード例 #4
0
void receiver() {
    int n;
    do {
        n = buf.receive();
        if(!(n%10000))
        {
            boost::unique_lock<boost::mutex> io_lock(io_mutex);
            std::cout << "received: " << n << std::endl;
        }
    } while (n != -1); // -1 indicates end of buffer
    buf.send(-1);
}