[omniORB] Omni Orb and OpenVMS serialized processing

Bruce Visscher bvisscher at bellsouth.net
Sat Feb 25 16:09:46 GMT 2006


[Sorry for the extremely slow reponse.  I hope this is still
helpful.]

>> I am using VMS AST routines (for timers) and one more 
>> application thread created with VMS runtime routines for pure 
>> socket communication to the computers without possibility to 
>> run CORBA as follows:
>  
>


The only way to synchronize an AST with a thread is via
pthread_cond_signal_int_np.  In fact, OpenVMS/VAX never had
"real" threads with upcalls so it was required to use this
mechanism to have socket calls that didn't block all threads
in the original omniORB port to that platform.  See
src/lib/omniORB/orbcore/tcp/tcpSocketVaxRoutines.cc and .h.

See also the Guide to Posix Threads in the OpenVMS documentation
(http://www.hp.com/go/openvms/doc).  Note especially, Appendix B 
"Considerations for OpenVMS systems".

In fact, I believe you might be better off sticking with the more
portable facilities such as timed conditioned waits for timers
and using the portable socket I/O.  In any case, even if you really
want to use QIO to do socket calls (I've never seen much of an
advantage personally), do you really need to use AST completion?





More information about the omniORB-list mailing list