| | |
| | | } |
| | | } |
| | | |
| | | BOOST_AUTO_TEST_CASE(TimedWaitTest) |
| | | { |
| | | SharedMemory &shm = TestShm(); |
| | | GlobalInit(shm); |
| | | ShmMsgQueue q(shm, NewSession(), 64); |
| | | for (int i = 0; i < 2; ++i) { |
| | | int ms = i * 100; |
| | | printf("Timeout Test %4d: ", ms); |
| | | boost::timer::auto_cpu_timer timer; |
| | | MsgI msg(shm); |
| | | bool r = q.Recv(msg, ms); |
| | | BOOST_CHECK(!r); |
| | | } |
| | | } |
| | | |
| | | BOOST_AUTO_TEST_CASE(RefCountTest) |
| | | { |
| | | SharedMemory &shm = TestShm(); |
| | |
| | | GlobalInit(shm); |
| | | |
| | | Msg m0(1000, shm); |
| | | BOOST_CHECK(m0.valid()); |
| | | BOOST_CHECK(!m0.valid()); |
| | | m0.Make(100); |
| | | BOOST_CHECK_EQUAL(m0.Count(), 1); |
| | | Msg m1 = m0; |
| | | BOOST_CHECK(m1.valid()); |