[complement-svn] SF.net SVN: complement: [1511] trunk/complement/explore/test/mt/mt_test.cc
Status: Pre-Alpha
Brought to you by:
complement
From: <com...@us...> - 2007-02-06 10:47:45
|
Revision: 1511 http://svn.sourceforge.net/complement/?rev=1511&view=rev Author: complement Date: 2007-02-06 02:47:44 -0800 (Tue, 06 Feb 2007) Log Message: ----------- one yield may be not enough on hi-end SMP Modified Paths: -------------- trunk/complement/explore/test/mt/mt_test.cc Modified: trunk/complement/explore/test/mt/mt_test.cc =================================================================== --- trunk/complement/explore/test/mt/mt_test.cc 2007-02-06 10:13:58 UTC (rev 1510) +++ trunk/complement/explore/test/mt/mt_test.cc 2007-02-06 10:47:44 UTC (rev 1511) @@ -158,7 +158,9 @@ { xmt::Barrier& b = *reinterpret_cast<xmt::Barrier *>(p); b.wait(); - xmt::Thread::yield(); + for ( int i = 0; i < 128; ++i ) { + xmt::Thread::yield(); + } m1.lock(); BOOST_CHECK( x == 1 ); @@ -223,7 +225,9 @@ { xmt::Barrier& b = *reinterpret_cast<xmt::Barrier *>(p); b.wait(); - xmt::Thread::yield(); + for ( int i = 0; i < 128; ++i ) { + xmt::Thread::yield(); + } sl1.lock(); BOOST_CHECK( x == 1 ); @@ -325,7 +329,9 @@ xmt::Barrier& b = *reinterpret_cast<xmt::Barrier *>(p); b.wait(); - xmt::Thread::yield(); + for ( int i = 0; i < 128; ++i ) { + xmt::Thread::yield(); + } m2.lock(); This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |