// 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 #include #include boost::mutex mutex; int counter=0; void change_count() { boost::mutex::scoped_lock lock(mutex); int i = ++counter; std::cout << "count == " << i << std::endl; } int main() { 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(); }