//// 7.3.critical.section.b.cpp// chapter 7 parallelism and concurrency// modern c++ tutorial//// created by changkun at changkun.de// https://github.com/changkun/modern-cpp-tutorial//#include <iostream>#include <mutex>#include <thread>int v = 1;void critical_section(int change_v) {static std::mutex mtx;std::unique_lock<std::mutex> lock(mtx);// do contention operationsv = change_v;std::cout << v << std::endl;// release the locklock.unlock();// during this period,// others are allowed to acquire v// start another group of contention operations// lock againlock.lock();v += 1;std::cout << v << std::endl;}int main() {std::thread t1(critical_section, 2), t2(critical_section, 3);t1.join();t2.join();return 0;}
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。