diff options
author | nobody <nobody@ae88bc3d-4319-0410-8dbf-d08b4c9d3795> | 2001-07-01 16:18:56 +0000 |
---|---|---|
committer | nobody <nobody@ae88bc3d-4319-0410-8dbf-d08b4c9d3795> | 2001-07-01 16:18:56 +0000 |
commit | 6803d545979635f9fc0fb817b1e0841e69a96472 (patch) | |
tree | 74eb2aa0844bc54028da8dc9704fb6eac45322c0 /tests/Simple_Message_Block_Test.cpp | |
parent | c0cc5f64b0e435e8603e6a47161d166e4140a49d (diff) | |
download | ATCD-TAO-1_1_18.tar.gz |
This commit was manufactured by cvs2svn to create tag 'TAO-1_1_18'.TAO-1_1_18
Diffstat (limited to 'tests/Simple_Message_Block_Test.cpp')
-rw-r--r-- | tests/Simple_Message_Block_Test.cpp | 183 |
1 files changed, 0 insertions, 183 deletions
diff --git a/tests/Simple_Message_Block_Test.cpp b/tests/Simple_Message_Block_Test.cpp deleted file mode 100644 index 1e17b86c3b1..00000000000 --- a/tests/Simple_Message_Block_Test.cpp +++ /dev/null @@ -1,183 +0,0 @@ -// $Id$ - -// ============================================================================ -// -// = LIBRARY -// tests -// -// = FILENAME -// Simple_Message_Block_Test.cpp -// -// = DESCRIPTION -// This test program is a torture test that illustrates how -// ACE_Message_Block reference counting works, how and when locks -// are used, how memory is managed, and how continuation chains -// of message blocks are made. Ideally used with purify :-) -// -// = AUTHOR -// Irfan Pyarali <irfan@cs.wustl.edu> -// -// ============================================================================ - -#include "test_config.h" -#include "ace/Message_Block.h" -#include "ace/Synch.h" - -ACE_RCSID(tests, Simple_Message_Block_Test, "$Id$") - -int -main (int, ACE_TCHAR *[]) -{ - ACE_START_TEST (ACE_TEXT ("Simple_Message_Block_Test")); - - { - // Checks normal stack deletes. - ACE_Message_Block mb; - } - - { - // Checks normal heap deletes. - ACE_Message_Block *mb; - - ACE_NEW_RETURN (mb, ACE_Message_Block, -1); - mb->release (); - } - - { - // Checks continuation of message blocks on the stack. - ACE_Message_Block mb1 (1024); - ACE_Message_Block mb2 (1024); - - mb1.cont (&mb2); - } - - { - // Checks continuation of message blocks on the heap. - ACE_Message_Block *mb1; - ACE_Message_Block *mb2; - - ACE_NEW_RETURN (mb1, ACE_Message_Block (1024), -1); - ACE_NEW_RETURN (mb2, ACE_Message_Block (1024), -1); - - mb1->cont (mb2); - mb1->release (); - } - - // Same set of tests but with locking_strategy set. - { - ACE_Lock_Adapter <ACE_SYNCH_MUTEX> mutex; - ACE_Lock *lock = &mutex; - - { - // Checks normal stack deletes. - ACE_Message_Block mb; - mb.locking_strategy (lock); - } - - { - // Checks normal heap deletes. - ACE_Message_Block *mb; - ACE_NEW_RETURN (mb, ACE_Message_Block, -1); - mb->locking_strategy (lock); - mb->release (); - } - - { - // Checks continuation of message blocks on the stack with one - // lock strategy. - ACE_Message_Block mb1 (1024); - ACE_Message_Block mb2 (1024); - - mb1.locking_strategy (lock); - - mb1.cont (&mb2); - } - - { - // Checks continuation of message blocks on the heap with one - // lock strategy. - ACE_Message_Block *mb1; - ACE_Message_Block *mb2; - - ACE_NEW_RETURN (mb1, ACE_Message_Block (1024), -1); - ACE_NEW_RETURN (mb2, ACE_Message_Block (1024), -1); - - mb1->locking_strategy (lock); - - mb1->cont (mb2); - mb1->release (); - } - - { - // Checks continuation of message blocks on the stack with two - // lock strategy. - ACE_Message_Block mb1 (1024); - ACE_Message_Block mb2 (1024); - - mb1.locking_strategy (lock); - mb2.locking_strategy (lock); - - mb1.cont (&mb2); - } - - { - // Checks continuation of message blocks on the heap with two - // lock strategy - ACE_Message_Block *mb1; - ACE_Message_Block *mb2; - - ACE_NEW_RETURN (mb1, ACE_Message_Block (1024), -1); - ACE_NEW_RETURN (mb2, ACE_Message_Block (1024), -1); - - mb1->locking_strategy (lock); - mb2->locking_strategy (lock); - - mb1->cont (mb2); - mb1->release (); - } - - { - // Checks continuation of message blocks on the heap with two - // lock strategy where the second one is a duplicate of the - // first - ACE_Message_Block *mb1; - ACE_NEW_RETURN (mb1, ACE_Message_Block (1024), -1); - mb1->locking_strategy (lock); - - ACE_Message_Block *mb2 = mb1->duplicate (); - - mb1->cont (mb2); - mb1->release (); - } - } - - { - // Checks continuation of message blocks on the heap with two - // different lock strategies - - ACE_Lock_Adapter <ACE_SYNCH_MUTEX> lock1; - ACE_Lock_Adapter <ACE_SYNCH_MUTEX> lock2; - - ACE_Message_Block *mb1; - ACE_Message_Block *mb2; - - ACE_NEW_RETURN (mb1, ACE_Message_Block (1024), -1); - ACE_NEW_RETURN (mb2, ACE_Message_Block (1024), -1); - - mb1->locking_strategy (&lock1); - mb2->locking_strategy (&lock2); - - mb1->cont (mb2); - mb1->release (); - } - - ACE_END_TEST; - return 0; -} - -#if defined (ACE_HAS_EXPLICIT_TEMPLATE_INSTANTIATION) -template class ACE_Lock_Adapter<ACE_SYNCH_MUTEX>; -#elif defined (ACE_HAS_TEMPLATE_INSTANTIATION_PRAGMA) -#pragma instantiate ACE_Lock_Adapter<ACE_SYNCH_MUTEX> -#endif /* ACE_HAS_EXPLICIT_TEMPLATE_INSTANTIATION */ - |