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
