>> >> In a brief, is making the home of NTA agent thread-safe enough for all >> those situations? > > Unfortunately no. The nta functions are thread-safe in the mean that > they do not use any shared global data, the nta objects like nta_leg_t > or nta_agent_t are not thead-safe. > > You have to obtain the root (via su_root_obtain()) that is used by nta > in order to access the nta objects in safe manner. (The original > thread used to create the root object must first release it with > su_root_release()). >
Like locking/unlocking a mutex, understood. I guess this also applies to nta_outgoing_tcreate() and friends. Even if sending outgoing transactions of different call legs in different threads, getting/releasing the root of the NTA is needed to avoid problems in the internal lists of the NTA agent. Right? Thanks, -Aleksander ------------------------------------------------------------------------------ SF.Net email is Sponsored by MIX09, March 18-20, 2009 in Las Vegas, Nevada. The future of the web can't happen without you. Join us at MIX09 to help pave the way to the Next Web now. Learn more and register at http://ad.doubleclick.net/clk;208669438;13503038;i?http://2009.visitmix.com/ _______________________________________________ Sofia-sip-devel mailing list Sofia-sip-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/sofia-sip-devel