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
> 
>   Define reentrant.

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
same time).

> > removes the use of global variables, e.g. replaces |xmlInitGlobals()|
> 
>   no, though the use of global variable has been limited to strict minimum 
> with
> new APIs
> 
> > with a function which returns a "handle" (similar to |_xmlGlobalState|)
> 
>   no
> 
> > 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 ?
> 
>   no
> 
> 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) ?

----

Bye,
Roland

-- 
  __ .  . __
 (o.\ \/ /.o) [EMAIL PROTECTED]
  \__\/\/__/  MPEG specialist, C&&JAVA&&Sun&&Unix programmer
  /O /==\ O\  TEL <currently fluctuating>
 (;O/ \/ \O;)
_______________________________________________
xml mailing list, project page  http://xmlsoft.org/
[email protected]
http://mail.gnome.org/mailman/listinfo/xml

Reply via email to