[Environment]

Microsoft Windows 7

Microsoft Visual Studio 2005 version 8.0.50727.42 (RTM.050727-4200)

boost 1.47.0



[Test case]

When running in release mode, no error occurs. On the other hand, in debug mode, an error occurs.



[Download]

thread_unit_test.zip



[Video Clip]

thread_unit_test_video_clip.zip



[Source Code]

#define BOOST_TEST_MODULE MyUnitTest
#include <boost/test/unit_test.hpp>
#include <boost/thread.hpp>

BOOST_AUTO_TEST_SUITE ( MySuite );

  void func()
  {
    BOOST_CHECK ( true );
  }

  BOOST_AUTO_TEST_CASE( ThreadTest )
  {
    static const int THREAD_CNT = 1000;
    boost::thread* t[THREAD_CNT];
    for (int i = 0; i < THREAD_CNT; i++)
    {
      t[i] = new boost::thread(func);
    }
    for (int i = 0; i < THREAD_CNT; i++)
    {
      t[i]->join();
    }
    for (int i = 0; i < THREAD_CNT; i++)
    {
      delete t[i];
    }
  }

BOOST_AUTO_TEST_SUITE_END (); // MySuite