blob: 0c1c6922dad55a95ce9691069563d8a0662fb8c0 [file] [log] [blame]
<HTML
><HEAD
><TITLE
>threads</TITLE
><META
NAME="GENERATOR"
CONTENT="Modular DocBook HTML Stylesheet Version 1.64
"><LINK
REL="HOME"
TITLE="Gnome XML Library Reference Manual"
HREF="book1.html"><LINK
REL="UP"
TITLE="Libxml Library Reference"
HREF="libxml-lib.html"><LINK
REL="PREVIOUS"
TITLE="c14n"
HREF="libxml-c14n.html"><LINK
REL="NEXT"
TITLE="globals"
HREF="libxml-globals.html"></HEAD
><BODY
CLASS="REFENTRY"
BGCOLOR="#FFFFFF"
TEXT="#000000"
LINK="#0000FF"
VLINK="#840084"
ALINK="#0000FF"
><DIV
CLASS="NAVHEADER"
><TABLE
WIDTH="100%"
BORDER="0"
BGCOLOR="#000000"
CELLPADDING="1"
CELLSPACING="0"
><TR
><TH
COLSPAN="4"
ALIGN="center"
><FONT
COLOR="#FFFFFF"
SIZE="5"
>Gnome XML Library Reference Manual</FONT
></TH
></TR
><TR
><TD
WIDTH="25%"
BGCOLOR="#C00000"
ALIGN="left"
><A
HREF="libxml-c14n.html"
><FONT
COLOR="#FFFFFF"
SIZE="3"
><B
>&#60;&#60;&#60; Previous Page</B
></FONT
></A
></TD
><TD
WIDTH="25%"
BGCOLOR="#0000C0"
ALIGN="center"
><FONT
COLOR="#FFFFFF"
SIZE="3"
><B
><A
HREF="book1.html"
><FONT
COLOR="#FFFFFF"
SIZE="3"
><B
>Home</B
></FONT
></A
></B
></FONT
></TD
><TD
WIDTH="25%"
BGCOLOR="#00C000"
ALIGN="center"
><FONT
COLOR="#FFFFFF"
SIZE="3"
><B
><A
HREF="libxml-lib.html"
><FONT
COLOR="#FFFFFF"
SIZE="3"
><B
>Up</B
></FONT
></A
></B
></FONT
></TD
><TD
WIDTH="25%"
BGCOLOR="#C00000"
ALIGN="right"
><A
HREF="libxml-globals.html"
><FONT
COLOR="#FFFFFF"
SIZE="3"
><B
>Next Page &#62;&#62;&#62;</B
></FONT
></A
></TD
></TR
></TABLE
></DIV
><H1
><A
NAME="LIBXML-THREADS"
>threads</A
></H1
><DIV
CLASS="REFNAMEDIV"
><A
NAME="AEN20092"
></A
><H2
>Name</H2
>threads&nbsp;--&nbsp;</DIV
><DIV
CLASS="REFSYNOPSISDIV"
><A
NAME="AEN20095"
></A
><H2
>Synopsis</H2
><TABLE
BORDER="0"
BGCOLOR="#D6E8FF"
WIDTH="100%"
CELLPADDING="6"
><TR
><TD
><PRE
CLASS="SYNOPSIS"
>&#13;
struct <A
HREF="libxml-threads.html#XMLMUTEX"
>xmlMutex</A
>;
typedef <A
HREF="libxml-threads.html#XMLMUTEXPTR"
>xmlMutexPtr</A
>;
struct <A
HREF="libxml-threads.html#XMLRMUTEX"
>xmlRMutex</A
>;
typedef <A
HREF="libxml-threads.html#XMLRMUTEXPTR"
>xmlRMutexPtr</A
>;
<A
HREF="libxml-threads.html#XMLMUTEXPTR"
>xmlMutexPtr</A
> <A
HREF="libxml-threads.html#XMLNEWMUTEX"
>xmlNewMutex</A
> (void);
void <A
HREF="libxml-threads.html#XMLMUTEXLOCK"
>xmlMutexLock</A
> (<A
HREF="libxml-threads.html#XMLMUTEXPTR"
>xmlMutexPtr</A
> tok);
void <A
HREF="libxml-threads.html#XMLMUTEXUNLOCK"
>xmlMutexUnlock</A
> (<A
HREF="libxml-threads.html#XMLMUTEXPTR"
>xmlMutexPtr</A
> tok);
void <A
HREF="libxml-threads.html#XMLFREEMUTEX"
>xmlFreeMutex</A
> (<A
HREF="libxml-threads.html#XMLMUTEXPTR"
>xmlMutexPtr</A
> tok);
<A
HREF="libxml-threads.html#XMLRMUTEXPTR"
>xmlRMutexPtr</A
> <A
HREF="libxml-threads.html#XMLNEWRMUTEX"
>xmlNewRMutex</A
> (void);
void <A
HREF="libxml-threads.html#XMLRMUTEXLOCK"
>xmlRMutexLock</A
> (<A
HREF="libxml-threads.html#XMLRMUTEXPTR"
>xmlRMutexPtr</A
> tok);
void <A
HREF="libxml-threads.html#XMLRMUTEXUNLOCK"
>xmlRMutexUnlock</A
> (<A
HREF="libxml-threads.html#XMLRMUTEXPTR"
>xmlRMutexPtr</A
> tok);
void <A
HREF="libxml-threads.html#XMLFREERMUTEX"
>xmlFreeRMutex</A
> (<A
HREF="libxml-threads.html#XMLRMUTEXPTR"
>xmlRMutexPtr</A
> tok);
void <A
HREF="libxml-threads.html#XMLINITTHREADS"
>xmlInitThreads</A
> (void);
void <A
HREF="libxml-threads.html#XMLLOCKLIBRARY"
>xmlLockLibrary</A
> (void);
void <A
HREF="libxml-threads.html#XMLUNLOCKLIBRARY"
>xmlUnlockLibrary</A
> (void);
int <A
HREF="libxml-threads.html#XMLGETTHREADID"
>xmlGetThreadId</A
> (void);
int <A
HREF="libxml-threads.html#XMLISMAINTHREAD"
>xmlIsMainThread</A
> (void);
void <A
HREF="libxml-threads.html#XMLCLEANUPTHREADS"
>xmlCleanupThreads</A
> (void);
<A
HREF="libxml-globals.html#XMLGLOBALSTATEPTR"
>xmlGlobalStatePtr</A
> <A
HREF="libxml-threads.html#XMLGETGLOBALSTATE"
>xmlGetGlobalState</A
> (void);</PRE
></TD
></TR
></TABLE
></DIV
><DIV
CLASS="REFSECT1"
><A
NAME="AEN20126"
></A
><H2
>Description</H2
><P
></P
></DIV
><DIV
CLASS="REFSECT1"
><A
NAME="AEN20129"
></A
><H2
>Details</H2
><DIV
CLASS="REFSECT2"
><A
NAME="AEN20131"
></A
><H3
><A
NAME="XMLMUTEX"
></A
>struct xmlMutex</H3
><TABLE
BORDER="0"
BGCOLOR="#D6E8FF"
WIDTH="100%"
CELLPADDING="6"
><TR
><TD
><PRE
CLASS="PROGRAMLISTING"
>struct xmlMutex;</PRE
></TD
></TR
></TABLE
><P
></P
></DIV
><HR><DIV
CLASS="REFSECT2"
><A
NAME="AEN20136"
></A
><H3
><A
NAME="XMLMUTEXPTR"
></A
>xmlMutexPtr</H3
><TABLE
BORDER="0"
BGCOLOR="#D6E8FF"
WIDTH="100%"
CELLPADDING="6"
><TR
><TD
><PRE
CLASS="PROGRAMLISTING"
>typedef xmlMutex *xmlMutexPtr;</PRE
></TD
></TR
></TABLE
><P
><A
HREF="libxml-threads.html#XMLNEWMUTEX"
>xmlNewMutex</A
>() is used to allocate a libxml2 token struct for use in
synchronizing access to data.</P
><P
></P
></DIV
><HR><DIV
CLASS="REFSECT2"
><A
NAME="AEN20143"
></A
><H3
><A
NAME="XMLRMUTEX"
></A
>struct xmlRMutex</H3
><TABLE
BORDER="0"
BGCOLOR="#D6E8FF"
WIDTH="100%"
CELLPADDING="6"
><TR
><TD
><PRE
CLASS="PROGRAMLISTING"
>struct xmlRMutex;</PRE
></TD
></TR
></TABLE
><P
></P
></DIV
><HR><DIV
CLASS="REFSECT2"
><A
NAME="AEN20148"
></A
><H3
><A
NAME="XMLRMUTEXPTR"
></A
>xmlRMutexPtr</H3
><TABLE
BORDER="0"
BGCOLOR="#D6E8FF"
WIDTH="100%"
CELLPADDING="6"
><TR
><TD
><PRE
CLASS="PROGRAMLISTING"
>typedef xmlRMutex *xmlRMutexPtr;</PRE
></TD
></TR
></TABLE
><P
></P
></DIV
><HR><DIV
CLASS="REFSECT2"
><A
NAME="AEN20153"
></A
><H3
><A
NAME="XMLNEWMUTEX"
></A
>xmlNewMutex ()</H3
><TABLE
BORDER="0"
BGCOLOR="#D6E8FF"
WIDTH="100%"
CELLPADDING="6"
><TR
><TD
><PRE
CLASS="PROGRAMLISTING"
><A
HREF="libxml-threads.html#XMLMUTEXPTR"
>xmlMutexPtr</A
> xmlNewMutex (void);</PRE
></TD
></TR
></TABLE
><P
></P
><DIV
CLASS="INFORMALTABLE"
><A
NAME="AEN20159"
></A
><P
></P
><TABLE
BORDER="0"
WIDTH="100%"
BGCOLOR="#FFD0D0"
CELLSPACING="0"
CELLPADDING="4"
CLASS="CALSTABLE"
><TBODY
><TR
><TD
WIDTH="20%"
ALIGN="RIGHT"
VALIGN="TOP"
><I
CLASS="EMPHASIS"
>Returns</I
> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
>&nbsp;</TD
></TR
></TBODY
></TABLE
><P
></P
></DIV
></DIV
><HR><DIV
CLASS="REFSECT2"
><A
NAME="AEN20168"
></A
><H3
><A
NAME="XMLMUTEXLOCK"
></A
>xmlMutexLock ()</H3
><TABLE
BORDER="0"
BGCOLOR="#D6E8FF"
WIDTH="100%"
CELLPADDING="6"
><TR
><TD
><PRE
CLASS="PROGRAMLISTING"
>void xmlMutexLock (<A
HREF="libxml-threads.html#XMLMUTEXPTR"
>xmlMutexPtr</A
> tok);</PRE
></TD
></TR
></TABLE
><P
><A
HREF="libxml-threads.html#XMLMUTEXLOCK"
>xmlMutexLock</A
>() is used to lock a libxml2 token.</P
><P
></P
><DIV
CLASS="INFORMALTABLE"
><A
NAME="AEN20176"
></A
><P
></P
><TABLE
BORDER="0"
WIDTH="100%"
BGCOLOR="#FFD0D0"
CELLSPACING="0"
CELLPADDING="4"
CLASS="CALSTABLE"
><TBODY
><TR
><TD
WIDTH="20%"
ALIGN="RIGHT"
VALIGN="TOP"
><TT
CLASS="PARAMETER"
><I
>tok</I
></TT
>&nbsp;:</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
> the simple mutex</TD
></TR
></TBODY
></TABLE
><P
></P
></DIV
></DIV
><HR><DIV
CLASS="REFSECT2"
><A
NAME="AEN20185"
></A
><H3
><A
NAME="XMLMUTEXUNLOCK"
></A
>xmlMutexUnlock ()</H3
><TABLE
BORDER="0"
BGCOLOR="#D6E8FF"
WIDTH="100%"
CELLPADDING="6"
><TR
><TD
><PRE
CLASS="PROGRAMLISTING"
>void xmlMutexUnlock (<A
HREF="libxml-threads.html#XMLMUTEXPTR"
>xmlMutexPtr</A
> tok);</PRE
></TD
></TR
></TABLE
><P
><A
HREF="libxml-threads.html#XMLMUTEXUNLOCK"
>xmlMutexUnlock</A
>() is used to unlock a libxml2 token.</P
><P
></P
><DIV
CLASS="INFORMALTABLE"
><A
NAME="AEN20193"
></A
><P
></P
><TABLE
BORDER="0"
WIDTH="100%"
BGCOLOR="#FFD0D0"
CELLSPACING="0"
CELLPADDING="4"
CLASS="CALSTABLE"
><TBODY
><TR
><TD
WIDTH="20%"
ALIGN="RIGHT"
VALIGN="TOP"
><TT
CLASS="PARAMETER"
><I
>tok</I
></TT
>&nbsp;:</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
> the simple mutex</TD
></TR
></TBODY
></TABLE
><P
></P
></DIV
></DIV
><HR><DIV
CLASS="REFSECT2"
><A
NAME="AEN20202"
></A
><H3
><A
NAME="XMLFREEMUTEX"
></A
>xmlFreeMutex ()</H3
><TABLE
BORDER="0"
BGCOLOR="#D6E8FF"
WIDTH="100%"
CELLPADDING="6"
><TR
><TD
><PRE
CLASS="PROGRAMLISTING"
>void xmlFreeMutex (<A
HREF="libxml-threads.html#XMLMUTEXPTR"
>xmlMutexPtr</A
> tok);</PRE
></TD
></TR
></TABLE
><P
><A
HREF="libxml-threads.html#XMLFREEMUTEX"
>xmlFreeMutex</A
>() is used to reclaim resources associated with a libxml2 token
struct.</P
><P
></P
><DIV
CLASS="INFORMALTABLE"
><A
NAME="AEN20210"
></A
><P
></P
><TABLE
BORDER="0"
WIDTH="100%"
BGCOLOR="#FFD0D0"
CELLSPACING="0"
CELLPADDING="4"
CLASS="CALSTABLE"
><TBODY
><TR
><TD
WIDTH="20%"
ALIGN="RIGHT"
VALIGN="TOP"
><TT
CLASS="PARAMETER"
><I
>tok</I
></TT
>&nbsp;:</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
> the simple mutex</TD
></TR
></TBODY
></TABLE
><P
></P
></DIV
></DIV
><HR><DIV
CLASS="REFSECT2"
><A
NAME="AEN20219"
></A
><H3
><A
NAME="XMLNEWRMUTEX"
></A
>xmlNewRMutex ()</H3
><TABLE
BORDER="0"
BGCOLOR="#D6E8FF"
WIDTH="100%"
CELLPADDING="6"
><TR
><TD
><PRE
CLASS="PROGRAMLISTING"
><A
HREF="libxml-threads.html#XMLRMUTEXPTR"
>xmlRMutexPtr</A
> xmlNewRMutex (void);</PRE
></TD
></TR
></TABLE
><P
></P
><DIV
CLASS="INFORMALTABLE"
><A
NAME="AEN20225"
></A
><P
></P
><TABLE
BORDER="0"
WIDTH="100%"
BGCOLOR="#FFD0D0"
CELLSPACING="0"
CELLPADDING="4"
CLASS="CALSTABLE"
><TBODY
><TR
><TD
WIDTH="20%"
ALIGN="RIGHT"
VALIGN="TOP"
><I
CLASS="EMPHASIS"
>Returns</I
> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
>&nbsp;</TD
></TR
></TBODY
></TABLE
><P
></P
></DIV
></DIV
><HR><DIV
CLASS="REFSECT2"
><A
NAME="AEN20234"
></A
><H3
><A
NAME="XMLRMUTEXLOCK"
></A
>xmlRMutexLock ()</H3
><TABLE
BORDER="0"
BGCOLOR="#D6E8FF"
WIDTH="100%"
CELLPADDING="6"
><TR
><TD
><PRE
CLASS="PROGRAMLISTING"
>void xmlRMutexLock (<A
HREF="libxml-threads.html#XMLRMUTEXPTR"
>xmlRMutexPtr</A
> tok);</PRE
></TD
></TR
></TABLE
><P
><A
HREF="libxml-threads.html#XMLRMUTEXLOCK"
>xmlRMutexLock</A
>() is used to lock a libxml2 token_r.</P
><P
></P
><DIV
CLASS="INFORMALTABLE"
><A
NAME="AEN20242"
></A
><P
></P
><TABLE
BORDER="0"
WIDTH="100%"
BGCOLOR="#FFD0D0"
CELLSPACING="0"
CELLPADDING="4"
CLASS="CALSTABLE"
><TBODY
><TR
><TD
WIDTH="20%"
ALIGN="RIGHT"
VALIGN="TOP"
><TT
CLASS="PARAMETER"
><I
>tok</I
></TT
>&nbsp;:</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
> the reentrant mutex</TD
></TR
></TBODY
></TABLE
><P
></P
></DIV
></DIV
><HR><DIV
CLASS="REFSECT2"
><A
NAME="AEN20251"
></A
><H3
><A
NAME="XMLRMUTEXUNLOCK"
></A
>xmlRMutexUnlock ()</H3
><TABLE
BORDER="0"
BGCOLOR="#D6E8FF"
WIDTH="100%"
CELLPADDING="6"
><TR
><TD
><PRE
CLASS="PROGRAMLISTING"
>void xmlRMutexUnlock (<A
HREF="libxml-threads.html#XMLRMUTEXPTR"
>xmlRMutexPtr</A
> tok);</PRE
></TD
></TR
></TABLE
><P
><A
HREF="libxml-threads.html#XMLRMUTEXUNLOCK"
>xmlRMutexUnlock</A
>() is used to unlock a libxml2 token_r.</P
><P
></P
><DIV
CLASS="INFORMALTABLE"
><A
NAME="AEN20259"
></A
><P
></P
><TABLE
BORDER="0"
WIDTH="100%"
BGCOLOR="#FFD0D0"
CELLSPACING="0"
CELLPADDING="4"
CLASS="CALSTABLE"
><TBODY
><TR
><TD
WIDTH="20%"
ALIGN="RIGHT"
VALIGN="TOP"
><TT
CLASS="PARAMETER"
><I
>tok</I
></TT
>&nbsp;:</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
> the reentrant mutex</TD
></TR
></TBODY
></TABLE
><P
></P
></DIV
></DIV
><HR><DIV
CLASS="REFSECT2"
><A
NAME="AEN20268"
></A
><H3
><A
NAME="XMLFREERMUTEX"
></A
>xmlFreeRMutex ()</H3
><TABLE
BORDER="0"
BGCOLOR="#D6E8FF"
WIDTH="100%"
CELLPADDING="6"
><TR
><TD
><PRE
CLASS="PROGRAMLISTING"
>void xmlFreeRMutex (<A
HREF="libxml-threads.html#XMLRMUTEXPTR"
>xmlRMutexPtr</A
> tok);</PRE
></TD
></TR
></TABLE
><P
></P
><DIV
CLASS="INFORMALTABLE"
><A
NAME="AEN20274"
></A
><P
></P
><TABLE
BORDER="0"
WIDTH="100%"
BGCOLOR="#FFD0D0"
CELLSPACING="0"
CELLPADDING="4"
CLASS="CALSTABLE"
><TBODY
><TR
><TD
WIDTH="20%"
ALIGN="RIGHT"
VALIGN="TOP"
><TT
CLASS="PARAMETER"
><I
>tok</I
></TT
>&nbsp;:</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
>&nbsp;</TD
></TR
></TBODY
></TABLE
><P
></P
></DIV
></DIV
><HR><DIV
CLASS="REFSECT2"
><A
NAME="AEN20283"
></A
><H3
><A
NAME="XMLINITTHREADS"
></A
>xmlInitThreads ()</H3
><TABLE
BORDER="0"
BGCOLOR="#D6E8FF"
WIDTH="100%"
CELLPADDING="6"
><TR
><TD
><PRE
CLASS="PROGRAMLISTING"
>void xmlInitThreads (void);</PRE
></TD
></TR
></TABLE
><P
><A
HREF="libxml-threads.html#XMLINITTHREADS"
>xmlInitThreads</A
>() is used to to initialize all the thread related
data of the libxml2 library.</P
><P
></P
></DIV
><HR><DIV
CLASS="REFSECT2"
><A
NAME="AEN20290"
></A
><H3
><A
NAME="XMLLOCKLIBRARY"
></A
>xmlLockLibrary ()</H3
><TABLE
BORDER="0"
BGCOLOR="#D6E8FF"
WIDTH="100%"
CELLPADDING="6"
><TR
><TD
><PRE
CLASS="PROGRAMLISTING"
>void xmlLockLibrary (void);</PRE
></TD
></TR
></TABLE
><P
><A
HREF="libxml-threads.html#XMLLOCKLIBRARY"
>xmlLockLibrary</A
>() is used to take out a re-entrant lock on the libxml2
library.</P
><P
></P
></DIV
><HR><DIV
CLASS="REFSECT2"
><A
NAME="AEN20297"
></A
><H3
><A
NAME="XMLUNLOCKLIBRARY"
></A
>xmlUnlockLibrary ()</H3
><TABLE
BORDER="0"
BGCOLOR="#D6E8FF"
WIDTH="100%"
CELLPADDING="6"
><TR
><TD
><PRE
CLASS="PROGRAMLISTING"
>void xmlUnlockLibrary (void);</PRE
></TD
></TR
></TABLE
><P
><A
HREF="libxml-threads.html#XMLUNLOCKLIBRARY"
>xmlUnlockLibrary</A
>() is used to release a re-entrant lock on the libxml2
library.</P
><P
></P
></DIV
><HR><DIV
CLASS="REFSECT2"
><A
NAME="AEN20304"
></A
><H3
><A
NAME="XMLGETTHREADID"
></A
>xmlGetThreadId ()</H3
><TABLE
BORDER="0"
BGCOLOR="#D6E8FF"
WIDTH="100%"
CELLPADDING="6"
><TR
><TD
><PRE
CLASS="PROGRAMLISTING"
>int xmlGetThreadId (void);</PRE
></TD
></TR
></TABLE
><P
><A
HREF="libxml-threads.html#XMLGETTHREADID"
>xmlGetThreadId</A
>() find the current thread ID number</P
><P
></P
><DIV
CLASS="INFORMALTABLE"
><A
NAME="AEN20311"
></A
><P
></P
><TABLE
BORDER="0"
WIDTH="100%"
BGCOLOR="#FFD0D0"
CELLSPACING="0"
CELLPADDING="4"
CLASS="CALSTABLE"
><TBODY
><TR
><TD
WIDTH="20%"
ALIGN="RIGHT"
VALIGN="TOP"
><I
CLASS="EMPHASIS"
>Returns</I
> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
>the current thread ID number</TD
></TR
></TBODY
></TABLE
><P
></P
></DIV
></DIV
><HR><DIV
CLASS="REFSECT2"
><A
NAME="AEN20320"
></A
><H3
><A
NAME="XMLISMAINTHREAD"
></A
>xmlIsMainThread ()</H3
><TABLE
BORDER="0"
BGCOLOR="#D6E8FF"
WIDTH="100%"
CELLPADDING="6"
><TR
><TD
><PRE
CLASS="PROGRAMLISTING"
>int xmlIsMainThread (void);</PRE
></TD
></TR
></TABLE
><P
><A
HREF="libxml-threads.html#XMLISMAINTHREAD"
>xmlIsMainThread</A
>() check whether the current thread is the main thread.</P
><P
></P
><DIV
CLASS="INFORMALTABLE"
><A
NAME="AEN20327"
></A
><P
></P
><TABLE
BORDER="0"
WIDTH="100%"
BGCOLOR="#FFD0D0"
CELLSPACING="0"
CELLPADDING="4"
CLASS="CALSTABLE"
><TBODY
><TR
><TD
WIDTH="20%"
ALIGN="RIGHT"
VALIGN="TOP"
><I
CLASS="EMPHASIS"
>Returns</I
> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
>1 if the current thread is the main thread, 0 otherwise</TD
></TR
></TBODY
></TABLE
><P
></P
></DIV
></DIV
><HR><DIV
CLASS="REFSECT2"
><A
NAME="AEN20336"
></A
><H3
><A
NAME="XMLCLEANUPTHREADS"
></A
>xmlCleanupThreads ()</H3
><TABLE
BORDER="0"
BGCOLOR="#D6E8FF"
WIDTH="100%"
CELLPADDING="6"
><TR
><TD
><PRE
CLASS="PROGRAMLISTING"
>void xmlCleanupThreads (void);</PRE
></TD
></TR
></TABLE
><P
><A
HREF="libxml-threads.html#XMLCLEANUPTHREADS"
>xmlCleanupThreads</A
>() is used to to cleanup all the thread related
data of the libxml2 library once processing has ended.</P
><P
></P
></DIV
><HR><DIV
CLASS="REFSECT2"
><A
NAME="AEN20343"
></A
><H3
><A
NAME="XMLGETGLOBALSTATE"
></A
>xmlGetGlobalState ()</H3
><TABLE
BORDER="0"
BGCOLOR="#D6E8FF"
WIDTH="100%"
CELLPADDING="6"
><TR
><TD
><PRE
CLASS="PROGRAMLISTING"
><A
HREF="libxml-globals.html#XMLGLOBALSTATEPTR"
>xmlGlobalStatePtr</A
> xmlGetGlobalState (void);</PRE
></TD
></TR
></TABLE
><P
><A
HREF="libxml-threads.html#XMLGETGLOBALSTATE"
>xmlGetGlobalState</A
>() is called to retrieve the global state for a thread.</P
><P
></P
><DIV
CLASS="INFORMALTABLE"
><A
NAME="AEN20351"
></A
><P
></P
><TABLE
BORDER="0"
WIDTH="100%"
BGCOLOR="#FFD0D0"
CELLSPACING="0"
CELLPADDING="4"
CLASS="CALSTABLE"
><TBODY
><TR
><TD
WIDTH="20%"
ALIGN="RIGHT"
VALIGN="TOP"
><I
CLASS="EMPHASIS"
>Returns</I
> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
>the thread global state or NULL in case of error</TD
></TR
></TBODY
></TABLE
><P
></P
></DIV
></DIV
></DIV
><DIV
CLASS="NAVFOOTER"
><BR
CLEAR="all"><BR><TABLE
WIDTH="100%"
BORDER="0"
BGCOLOR="#000000"
CELLPADDING="1"
CELLSPACING="0"
><TR
><TD
WIDTH="25%"
BGCOLOR="#C00000"
ALIGN="left"
><A
HREF="libxml-c14n.html"
><FONT
COLOR="#FFFFFF"
SIZE="3"
><B
>&#60;&#60;&#60; Previous Page</B
></FONT
></A
></TD
><TD
WIDTH="25%"
BGCOLOR="#0000C0"
ALIGN="center"
><FONT
COLOR="#FFFFFF"
SIZE="3"
><B
><A
HREF="book1.html"
><FONT
COLOR="#FFFFFF"
SIZE="3"
><B
>Home</B
></FONT
></A
></B
></FONT
></TD
><TD
WIDTH="25%"
BGCOLOR="#00C000"
ALIGN="center"
><FONT
COLOR="#FFFFFF"
SIZE="3"
><B
><A
HREF="libxml-lib.html"
><FONT
COLOR="#FFFFFF"
SIZE="3"
><B
>Up</B
></FONT
></A
></B
></FONT
></TD
><TD
WIDTH="25%"
BGCOLOR="#C00000"
ALIGN="right"
><A
HREF="libxml-globals.html"
><FONT
COLOR="#FFFFFF"
SIZE="3"
><B
>Next Page &#62;&#62;&#62;</B
></FONT
></A
></TD
></TR
><TR
><TD
COLSPAN="2"
ALIGN="left"
><FONT
COLOR="#FFFFFF"
SIZE="3"
><B
>c14n</B
></FONT
></TD
><TD
COLSPAN="2"
ALIGN="right"
><FONT
COLOR="#FFFFFF"
SIZE="3"
><B
>globals</B
></FONT
></TD
></TR
></TABLE
></DIV
></BODY
></HTML
>