On Thu, Oct 26, 2006 at 04:33:49PM -0500, David Hagood wrote:
> Assume that I have a single xmlSaveCtxtPtr that has been created, and is
> visible to multiple threads within a program.
> 
> Assume that I have multiple threads creating multiple document fragments
> (separate xmlNodePtr objects, one per thread), using various xmlNewChild
> and the like calls. Assume that only one thread manipulates any given
> xmlNodePtr.
> 
> Is the call to xmlSaveTree intrinsically thread safe, or do I have to do
> my thread protection outside of xmlSaveTree?

  One context per thread like for parsing contexts. Multiple threads
accessing the same xmlSaveCtxtPtr won't be synchronized by libxml2, it will
fail at some point. You need to add your own locking on top.

Daniel

-- 
Red Hat Virtualization group http://redhat.com/virtualization/
Daniel Veillard      | virtualization library  http://libvirt.org/
[EMAIL PROTECTED]  | libxml GNOME XML XSLT toolkit  http://xmlsoft.org/
http://veillard.com/ | Rpmfind RPM search engine  http://rpmfind.net/
_______________________________________________
xml mailing list, project page  http://xmlsoft.org/
[email protected]
http://mail.gnome.org/mailman/listinfo/xml

Reply via email to