1// Copyright (C) 2010 Vicente Botet
2//
3// Distributed under the Boost Software License, Version 1.0. (See accompanying
4// file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
5
6#define BOOST_THREAD_VERSION 2
7#define BOOST_THREAD_USES_LOG
8
9#include <iostream>
10#include <boost/thread/thread_only.hpp>
11#include <boost/thread/detail/log.hpp>
12
13void thread()
14{
15 BOOST_THREAD_LOG << "<thrd" << BOOST_THREAD_END_LOG;
16 try {
17 boost::this_thread::sleep_for(d: boost::chrono::seconds(30));
18 } catch (...)
19 {
20 BOOST_THREAD_LOG << "thrd exception" << BOOST_THREAD_END_LOG;
21 throw;
22 }
23 //while (1) ; // Never quit
24 BOOST_THREAD_LOG << "thrd>" << BOOST_THREAD_END_LOG;
25}
26
27boost::thread example(thread);
28
29int main()
30{
31 BOOST_THREAD_LOG << "<main" << BOOST_THREAD_END_LOG;
32 boost::this_thread::sleep_for(d: boost::chrono::seconds(30));
33 BOOST_THREAD_LOG << "main" << BOOST_THREAD_END_LOG;
34 //while (1) ; // Never quit
35 example.join();
36 BOOST_THREAD_LOG << "main>" << BOOST_THREAD_END_LOG;
37 return 0;
38}
39
40

source code of boost/libs/thread/test/test_7665.cpp