Problem:
What can result in a call to VISDeactivateAllObjects::begin() ?
Resolution:
Problem Description:
Product : VBC 4.5 and later
Platform : NA
Compiler : NA
Visibroker component : ORB
Description :
Stack trace of a VBC 4.5 Server process showing the following calls
:
>>>>
.....
.....
liborb_r.so`void VISDeactivateAllObjects::begin() 0x108(746c88,
f35fbf80, 0,
fffffff8, 0, f35fbfa9)
libvport_r.so`void*VISThread::_start(void*) 0x5c(746c88, 0, 0,
fef34bcc, 0, 0)
libthread.so.1`_lwp_start(0, 0, 0, 0, 0, 0)
Would like to know what can result in the call to
VISDeactivateAllObjects::begin() ?
Resolution:
A. ORB shutdown call results in the call to
VISDeactivateAllObjects::begin().
B. ORB shutdown can be initiated by :
1. Application can explicitly call ORB::shutdown() or exit() to
initiate orb shutdown.
2. VBC orb also has signal handlers (for signals such as SIGTERM
and SIGINT) that can result in proper ORB shutdown.
C. The orb shutdown call internally makes invocation to destroy all
the POAs. And for each POA, the _deactivate_all_objects() is
invoked to deactivate the objects that are in the active object map
(implemented as a dictionary) of that poa.
#Security
#VisiBroker




