mutex.cpp
来自「Boost provides free peer-reviewed portab」· C++ 代码 · 共 48 行
CPP
48 行
// Copyright (C) 2001-2003// William E. Kempf//// Distributed under the Boost Software License, Version 1.0. (See accompanying // file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)#include <boost/thread/mutex.hpp>#include <boost/thread/thread.hpp>#include <iostream>boost::mutex io_mutex; // The iostreams are not guaranteed to be thread-safe!class counter{public: counter() : count(0) { } int increment() { boost::mutex::scoped_lock scoped_lock(mutex); return ++count; }private: boost::mutex mutex; int count;};counter c;void change_count(){ int i = c.increment(); boost::mutex::scoped_lock scoped_lock(io_mutex); std::cout << "count == " << i << std::endl;}int main(int, char*[]){ const int num_threads = 4; boost::thread_group thrds; for (int i=0; i < num_threads; ++i) thrds.create_thread(&change_count); thrds.join_all(); return 0;}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?