add original source
This commit is contained in:
22
source/listing_5.2.cpp
Normal file
22
source/listing_5.2.cpp
Normal file
@@ -0,0 +1,22 @@
|
||||
#include <vector>
|
||||
#include <atomic>
|
||||
#include <iostream>
|
||||
#include <chrono>
|
||||
#include <thread>
|
||||
|
||||
std::vector<int> data;
|
||||
std::atomic_bool data_ready(false);
|
||||
|
||||
void reader_thread()
|
||||
{
|
||||
while(!data_ready.load())
|
||||
{
|
||||
std::this_thread::sleep_for(std::chrono::milliseconds(1));
|
||||
}
|
||||
std::cout<<"The answer="<<data[0]<<"\n";
|
||||
}
|
||||
void writer_thread()
|
||||
{
|
||||
data.push_back(42);
|
||||
data_ready=true;
|
||||
}
|
||||
Reference in New Issue
Block a user