Re: [xml] New libxml which is reentrant ?
- From: Roland Mainz <roland mainz nrubsig org>
- To: veillard redhat com
- Cc: libxml mailing list <xml gnome org>
- Subject: Re: [xml] New libxml which is reentrant ?
- Date: Tue, 08 Jul 2008 21:57:09 +0200
Daniel Veillard wrote:
On Tue, Jul 08, 2008 at 02:04:32AM +0200, Roland Mainz wrote:
Are there any plans to make a new libxml version which is reentrant and
The current problem we have is that if we have library "a" which uses
libxml2 and then calls a function in library "b" which itself does some
other stuff with libxml2 we get data corruption (the problem isn't
limited to one library - we're seeing this in multiple libxml2 consumers
in Solaris where libraries cannot be combined if both use libxml2 at the
removes the use of global variables, e.g. replaces |xmlInitGlobals()|
no, though the use of global variable has been limited to strict minimum with
with a function which returns a "handle" (similar to |_xmlGlobalState|)
which is per thread and/or consumer (similar to how PAM handles thread
global variables are already per thread
Ok... but it seems this limits consumers in a way that they can't be
nested or resources "moved" between threads (e.g. thread "a" creates a
resource and then passes it completely over to thread "b" for further
processing and disposal).
support) and then passed explicitly to each consuming function ?
In a nutshell, do not expect a libxml2 redesign.
Do you know any other XML parsers which fall into the category of being
reentrant (as described above) ?
__ . . __
(o.\ \/ /.o) roland mainz nrubsig org
\__\/\/__/ MPEG specialist, C&&JAVA&&Sun&&Unix programmer
/O /==\ O\ TEL <currently fluctuating>
(;O/ \/ \O;)
] [Thread Prev