00001 /* 00002 * 00003 * 00004 * Distributed under the OpenDDS License. 00005 * See: http://www.opendds.org/license.html 00006 */ 00007 00008 #include "EntryExit.h" 00009 #include "dds/DCPS/debug.h" 00010 00011 ACE_INLINE 00012 OpenDDS::DCPS::ReactorSynch::ReactorSynch( 00013 ThreadSynchResource* synch_resource, 00014 TransportSendStrategy* strategy, 00015 ACE_Reactor* reactor 00016 ) 00017 : ThreadSynch(synch_resource), 00018 scheduleOutputHandler_( new ScheduleOutputHandler( strategy, reactor)) 00019 { 00020 DBG_ENTRY_LVL("ReactorSynch","ReactorSynch",6); 00021 00022 // Manage the handler storage using the provided _var. 00023 safeHandler_ = scheduleOutputHandler_; 00024 00025 if (DCPS_debug_level > 4) { 00026 std::size_t id = 0; 00027 if( worker()) { 00028 id = worker()->id(); 00029 } 00030 ACE_DEBUG((LM_DEBUG, 00031 ACE_TEXT("(%P|%t) ReactorSynch::ReactorSynch() [%d] - ") 00032 ACE_TEXT("establishing synch %C a worker.\n"), 00033 id,(worker()?"with":"without"))); 00034 } 00035 } 00036