blob: 417c2dd35302228b15027ef0ce9bea665c593c23 [file] [log] [blame]
Daniel Veillardb36d4fe2001-11-28 13:40:42 +00001<HTML
2><HEAD
3><TITLE
4>threads</TITLE
5><META
6NAME="GENERATOR"
Daniel Veillard539638b2002-07-06 19:55:14 +00007CONTENT="Modular DocBook HTML Stylesheet Version 1.76b+
Daniel Veillardb36d4fe2001-11-28 13:40:42 +00008"><LINK
9REL="HOME"
10TITLE="Gnome XML Library Reference Manual"
11HREF="book1.html"><LINK
12REL="UP"
13TITLE="Libxml Library Reference"
14HREF="libxml-lib.html"><LINK
15REL="PREVIOUS"
Daniel Veillardaf43f632002-03-08 15:05:20 +000016TITLE="c14n"
17HREF="libxml-c14n.html"><LINK
Daniel Veillardb36d4fe2001-11-28 13:40:42 +000018REL="NEXT"
19TITLE="globals"
20HREF="libxml-globals.html"></HEAD
21><BODY
22CLASS="REFENTRY"
23BGCOLOR="#FFFFFF"
24TEXT="#000000"
25LINK="#0000FF"
26VLINK="#840084"
27ALINK="#0000FF"
28><DIV
29CLASS="NAVHEADER"
30><TABLE
31WIDTH="100%"
32BORDER="0"
33BGCOLOR="#000000"
34CELLPADDING="1"
35CELLSPACING="0"
36><TR
37><TH
38COLSPAN="4"
39ALIGN="center"
40><FONT
41COLOR="#FFFFFF"
42SIZE="5"
43>Gnome XML Library Reference Manual</FONT
44></TH
45></TR
46><TR
47><TD
48WIDTH="25%"
49BGCOLOR="#C00000"
50ALIGN="left"
51><A
Daniel Veillardaf43f632002-03-08 15:05:20 +000052HREF="libxml-c14n.html"
Daniel Veillardb36d4fe2001-11-28 13:40:42 +000053><FONT
54COLOR="#FFFFFF"
55SIZE="3"
56><B
57>&#60;&#60;&#60; Previous Page</B
58></FONT
59></A
60></TD
61><TD
62WIDTH="25%"
63BGCOLOR="#0000C0"
64ALIGN="center"
65><FONT
66COLOR="#FFFFFF"
67SIZE="3"
68><B
69><A
70HREF="book1.html"
71><FONT
72COLOR="#FFFFFF"
73SIZE="3"
74><B
75>Home</B
76></FONT
77></A
78></B
79></FONT
80></TD
81><TD
82WIDTH="25%"
83BGCOLOR="#00C000"
84ALIGN="center"
85><FONT
86COLOR="#FFFFFF"
87SIZE="3"
88><B
89><A
90HREF="libxml-lib.html"
91><FONT
92COLOR="#FFFFFF"
93SIZE="3"
94><B
95>Up</B
96></FONT
97></A
98></B
99></FONT
100></TD
101><TD
102WIDTH="25%"
103BGCOLOR="#C00000"
104ALIGN="right"
105><A
106HREF="libxml-globals.html"
107><FONT
108COLOR="#FFFFFF"
109SIZE="3"
110><B
111>Next Page &#62;&#62;&#62;</B
112></FONT
113></A
114></TD
115></TR
116></TABLE
117></DIV
118><H1
119><A
Daniel Veillardaec63562003-03-23 20:42:17 +0000120NAME="LIBXML-THREADS"
121></A
122>threads</H1
Daniel Veillardb36d4fe2001-11-28 13:40:42 +0000123><DIV
124CLASS="REFNAMEDIV"
125><A
Daniel Veillardc2d4a932003-04-01 11:13:05 +0000126NAME="AEN22791"
Daniel Veillardb36d4fe2001-11-28 13:40:42 +0000127></A
128><H2
129>Name</H2
130>threads&nbsp;--&nbsp;</DIV
131><DIV
132CLASS="REFSYNOPSISDIV"
133><A
Daniel Veillardc2d4a932003-04-01 11:13:05 +0000134NAME="AEN22794"
Daniel Veillardaec63562003-03-23 20:42:17 +0000135></A
136><H2
Daniel Veillardb36d4fe2001-11-28 13:40:42 +0000137>Synopsis</H2
138><TABLE
139BORDER="0"
140BGCOLOR="#D6E8FF"
141WIDTH="100%"
142CELLPADDING="6"
143><TR
144><TD
145><PRE
146CLASS="SYNOPSIS"
147>&#13;
148
149struct <A
150HREF="libxml-threads.html#XMLMUTEX"
151>xmlMutex</A
152>;
153typedef <A
154HREF="libxml-threads.html#XMLMUTEXPTR"
155>xmlMutexPtr</A
156>;
Daniel Veillard5f4b5992002-02-20 10:22:49 +0000157struct <A
158HREF="libxml-threads.html#XMLRMUTEX"
159>xmlRMutex</A
160>;
161typedef <A
162HREF="libxml-threads.html#XMLRMUTEXPTR"
163>xmlRMutexPtr</A
164>;
Daniel Veillardb36d4fe2001-11-28 13:40:42 +0000165<A
166HREF="libxml-threads.html#XMLMUTEXPTR"
167>xmlMutexPtr</A
168> <A
169HREF="libxml-threads.html#XMLNEWMUTEX"
170>xmlNewMutex</A
171> (void);
172void <A
173HREF="libxml-threads.html#XMLMUTEXLOCK"
174>xmlMutexLock</A
175> (<A
176HREF="libxml-threads.html#XMLMUTEXPTR"
177>xmlMutexPtr</A
178> tok);
179void <A
180HREF="libxml-threads.html#XMLMUTEXUNLOCK"
181>xmlMutexUnlock</A
182> (<A
183HREF="libxml-threads.html#XMLMUTEXPTR"
184>xmlMutexPtr</A
185> tok);
186void <A
187HREF="libxml-threads.html#XMLFREEMUTEX"
188>xmlFreeMutex</A
189> (<A
190HREF="libxml-threads.html#XMLMUTEXPTR"
191>xmlMutexPtr</A
192> tok);
Daniel Veillardb36d4fe2001-11-28 13:40:42 +0000193<A
194HREF="libxml-threads.html#XMLRMUTEXPTR"
195>xmlRMutexPtr</A
196> <A
197HREF="libxml-threads.html#XMLNEWRMUTEX"
198>xmlNewRMutex</A
199> (void);
200void <A
201HREF="libxml-threads.html#XMLRMUTEXLOCK"
202>xmlRMutexLock</A
203> (<A
204HREF="libxml-threads.html#XMLRMUTEXPTR"
205>xmlRMutexPtr</A
206> tok);
207void <A
208HREF="libxml-threads.html#XMLRMUTEXUNLOCK"
209>xmlRMutexUnlock</A
210> (<A
211HREF="libxml-threads.html#XMLRMUTEXPTR"
212>xmlRMutexPtr</A
213> tok);
214void <A
215HREF="libxml-threads.html#XMLFREERMUTEX"
216>xmlFreeRMutex</A
217> (<A
218HREF="libxml-threads.html#XMLRMUTEXPTR"
219>xmlRMutexPtr</A
220> tok);
221void <A
222HREF="libxml-threads.html#XMLINITTHREADS"
223>xmlInitThreads</A
224> (void);
225void <A
226HREF="libxml-threads.html#XMLLOCKLIBRARY"
227>xmlLockLibrary</A
228> (void);
229void <A
230HREF="libxml-threads.html#XMLUNLOCKLIBRARY"
231>xmlUnlockLibrary</A
232> (void);
233int <A
234HREF="libxml-threads.html#XMLGETTHREADID"
235>xmlGetThreadId</A
236> (void);
237int <A
238HREF="libxml-threads.html#XMLISMAINTHREAD"
239>xmlIsMainThread</A
240> (void);
241void <A
242HREF="libxml-threads.html#XMLCLEANUPTHREADS"
243>xmlCleanupThreads</A
244> (void);
245<A
246HREF="libxml-globals.html#XMLGLOBALSTATEPTR"
247>xmlGlobalStatePtr</A
248> <A
249HREF="libxml-threads.html#XMLGETGLOBALSTATE"
250>xmlGetGlobalState</A
251> (void);</PRE
252></TD
253></TR
254></TABLE
255></DIV
256><DIV
257CLASS="REFSECT1"
258><A
Daniel Veillardc2d4a932003-04-01 11:13:05 +0000259NAME="AEN22825"
Daniel Veillardb36d4fe2001-11-28 13:40:42 +0000260></A
261><H2
262>Description</H2
263><P
264></P
265></DIV
266><DIV
267CLASS="REFSECT1"
268><A
Daniel Veillardc2d4a932003-04-01 11:13:05 +0000269NAME="AEN22828"
Daniel Veillardb36d4fe2001-11-28 13:40:42 +0000270></A
271><H2
272>Details</H2
273><DIV
274CLASS="REFSECT2"
275><A
Daniel Veillardc2d4a932003-04-01 11:13:05 +0000276NAME="AEN22830"
Daniel Veillardb36d4fe2001-11-28 13:40:42 +0000277></A
278><H3
279><A
280NAME="XMLMUTEX"
281></A
Daniel Veillardaf43f632002-03-08 15:05:20 +0000282>struct xmlMutex</H3
Daniel Veillardb36d4fe2001-11-28 13:40:42 +0000283><TABLE
284BORDER="0"
285BGCOLOR="#D6E8FF"
286WIDTH="100%"
287CELLPADDING="6"
288><TR
289><TD
290><PRE
291CLASS="PROGRAMLISTING"
292>struct xmlMutex;</PRE
293></TD
294></TR
295></TABLE
296><P
297></P
298></DIV
299><HR><DIV
300CLASS="REFSECT2"
301><A
Daniel Veillardc2d4a932003-04-01 11:13:05 +0000302NAME="AEN22835"
Daniel Veillardb36d4fe2001-11-28 13:40:42 +0000303></A
304><H3
305><A
306NAME="XMLMUTEXPTR"
307></A
Daniel Veillardaf43f632002-03-08 15:05:20 +0000308>xmlMutexPtr</H3
Daniel Veillardb36d4fe2001-11-28 13:40:42 +0000309><P
Daniel Veillardb36d4fe2001-11-28 13:40:42 +0000310></P
311></DIV
312><HR><DIV
313CLASS="REFSECT2"
314><A
Daniel Veillardc2d4a932003-04-01 11:13:05 +0000315NAME="AEN22839"
Daniel Veillard5f4b5992002-02-20 10:22:49 +0000316></A
317><H3
318><A
319NAME="XMLRMUTEX"
320></A
Daniel Veillardaf43f632002-03-08 15:05:20 +0000321>struct xmlRMutex</H3
Daniel Veillard5f4b5992002-02-20 10:22:49 +0000322><TABLE
323BORDER="0"
324BGCOLOR="#D6E8FF"
325WIDTH="100%"
326CELLPADDING="6"
327><TR
328><TD
329><PRE
330CLASS="PROGRAMLISTING"
331>struct xmlRMutex;</PRE
332></TD
333></TR
334></TABLE
335><P
336></P
337></DIV
338><HR><DIV
339CLASS="REFSECT2"
340><A
Daniel Veillardc2d4a932003-04-01 11:13:05 +0000341NAME="AEN22844"
Daniel Veillard5f4b5992002-02-20 10:22:49 +0000342></A
343><H3
344><A
345NAME="XMLRMUTEXPTR"
346></A
Daniel Veillardaf43f632002-03-08 15:05:20 +0000347>xmlRMutexPtr</H3
Daniel Veillard5f4b5992002-02-20 10:22:49 +0000348><P
349></P
350></DIV
351><HR><DIV
352CLASS="REFSECT2"
353><A
Daniel Veillardc2d4a932003-04-01 11:13:05 +0000354NAME="AEN22848"
Daniel Veillardb36d4fe2001-11-28 13:40:42 +0000355></A
356><H3
357><A
358NAME="XMLNEWMUTEX"
359></A
Daniel Veillardaf43f632002-03-08 15:05:20 +0000360>xmlNewMutex ()</H3
Daniel Veillardb36d4fe2001-11-28 13:40:42 +0000361><TABLE
362BORDER="0"
363BGCOLOR="#D6E8FF"
364WIDTH="100%"
365CELLPADDING="6"
366><TR
367><TD
368><PRE
369CLASS="PROGRAMLISTING"
370><A
371HREF="libxml-threads.html#XMLMUTEXPTR"
372>xmlMutexPtr</A
373> xmlNewMutex (void);</PRE
374></TD
375></TR
376></TABLE
377><P
Daniel Veillardaec63562003-03-23 20:42:17 +0000378><A
379HREF="libxml-threads.html#XMLNEWMUTEX"
380>xmlNewMutex</A
381>() is used to allocate a libxml2 token struct for use in
382synchronizing access to data.</P
383><P
Daniel Veillardb36d4fe2001-11-28 13:40:42 +0000384></P
385><DIV
386CLASS="INFORMALTABLE"
387><A
Daniel Veillardc2d4a932003-04-01 11:13:05 +0000388NAME="AEN22856"
Daniel Veillardaec63562003-03-23 20:42:17 +0000389></A
390><P
Daniel Veillardb36d4fe2001-11-28 13:40:42 +0000391></P
392><TABLE
393BORDER="0"
394WIDTH="100%"
395BGCOLOR="#FFD0D0"
396CELLSPACING="0"
397CELLPADDING="4"
398CLASS="CALSTABLE"
399><TBODY
400><TR
401><TD
402WIDTH="20%"
403ALIGN="RIGHT"
404VALIGN="TOP"
Daniel Veillard539638b2002-07-06 19:55:14 +0000405><SPAN
406CLASS="emphasis"
Daniel Veillardb36d4fe2001-11-28 13:40:42 +0000407><I
408CLASS="EMPHASIS"
409>Returns</I
Daniel Veillard539638b2002-07-06 19:55:14 +0000410></SPAN
Daniel Veillardb36d4fe2001-11-28 13:40:42 +0000411> :</TD
412><TD
413WIDTH="80%"
414ALIGN="LEFT"
415VALIGN="TOP"
Daniel Veillardd8da01c2003-03-24 15:58:23 +0000416>&nbsp;</TD
Daniel Veillardb36d4fe2001-11-28 13:40:42 +0000417></TR
418></TBODY
419></TABLE
420><P
421></P
422></DIV
423></DIV
424><HR><DIV
425CLASS="REFSECT2"
426><A
Daniel Veillardc2d4a932003-04-01 11:13:05 +0000427NAME="AEN22865"
Daniel Veillardb36d4fe2001-11-28 13:40:42 +0000428></A
429><H3
430><A
431NAME="XMLMUTEXLOCK"
432></A
Daniel Veillardaf43f632002-03-08 15:05:20 +0000433>xmlMutexLock ()</H3
Daniel Veillardb36d4fe2001-11-28 13:40:42 +0000434><TABLE
435BORDER="0"
436BGCOLOR="#D6E8FF"
437WIDTH="100%"
438CELLPADDING="6"
439><TR
440><TD
441><PRE
442CLASS="PROGRAMLISTING"
443>void xmlMutexLock (<A
444HREF="libxml-threads.html#XMLMUTEXPTR"
445>xmlMutexPtr</A
446> tok);</PRE
447></TD
448></TR
449></TABLE
450><P
451><A
452HREF="libxml-threads.html#XMLMUTEXLOCK"
453>xmlMutexLock</A
454>() is used to lock a libxml2 token.</P
455><P
456></P
457><DIV
458CLASS="INFORMALTABLE"
459><A
Daniel Veillardc2d4a932003-04-01 11:13:05 +0000460NAME="AEN22873"
Daniel Veillardaec63562003-03-23 20:42:17 +0000461></A
462><P
Daniel Veillardb36d4fe2001-11-28 13:40:42 +0000463></P
464><TABLE
465BORDER="0"
466WIDTH="100%"
467BGCOLOR="#FFD0D0"
468CELLSPACING="0"
469CELLPADDING="4"
470CLASS="CALSTABLE"
471><TBODY
472><TR
473><TD
474WIDTH="20%"
475ALIGN="RIGHT"
476VALIGN="TOP"
477><TT
478CLASS="PARAMETER"
479><I
480>tok</I
481></TT
482>&nbsp;:</TD
483><TD
484WIDTH="80%"
485ALIGN="LEFT"
486VALIGN="TOP"
Daniel Veillardd8da01c2003-03-24 15:58:23 +0000487>&nbsp;</TD
Daniel Veillardb36d4fe2001-11-28 13:40:42 +0000488></TR
489></TBODY
490></TABLE
491><P
492></P
493></DIV
494></DIV
495><HR><DIV
496CLASS="REFSECT2"
497><A
Daniel Veillardc2d4a932003-04-01 11:13:05 +0000498NAME="AEN22882"
Daniel Veillardb36d4fe2001-11-28 13:40:42 +0000499></A
500><H3
501><A
502NAME="XMLMUTEXUNLOCK"
503></A
Daniel Veillardaf43f632002-03-08 15:05:20 +0000504>xmlMutexUnlock ()</H3
Daniel Veillardb36d4fe2001-11-28 13:40:42 +0000505><TABLE
506BORDER="0"
507BGCOLOR="#D6E8FF"
508WIDTH="100%"
509CELLPADDING="6"
510><TR
511><TD
512><PRE
513CLASS="PROGRAMLISTING"
514>void xmlMutexUnlock (<A
515HREF="libxml-threads.html#XMLMUTEXPTR"
516>xmlMutexPtr</A
517> tok);</PRE
518></TD
519></TR
520></TABLE
521><P
522><A
523HREF="libxml-threads.html#XMLMUTEXUNLOCK"
524>xmlMutexUnlock</A
525>() is used to unlock a libxml2 token.</P
526><P
527></P
528><DIV
529CLASS="INFORMALTABLE"
530><A
Daniel Veillardc2d4a932003-04-01 11:13:05 +0000531NAME="AEN22890"
Daniel Veillardaec63562003-03-23 20:42:17 +0000532></A
533><P
Daniel Veillardb36d4fe2001-11-28 13:40:42 +0000534></P
535><TABLE
536BORDER="0"
537WIDTH="100%"
538BGCOLOR="#FFD0D0"
539CELLSPACING="0"
540CELLPADDING="4"
541CLASS="CALSTABLE"
542><TBODY
543><TR
544><TD
545WIDTH="20%"
546ALIGN="RIGHT"
547VALIGN="TOP"
548><TT
549CLASS="PARAMETER"
550><I
551>tok</I
552></TT
553>&nbsp;:</TD
554><TD
555WIDTH="80%"
556ALIGN="LEFT"
557VALIGN="TOP"
Daniel Veillardd8da01c2003-03-24 15:58:23 +0000558>&nbsp;</TD
Daniel Veillardb36d4fe2001-11-28 13:40:42 +0000559></TR
560></TBODY
561></TABLE
562><P
563></P
564></DIV
565></DIV
566><HR><DIV
567CLASS="REFSECT2"
568><A
Daniel Veillardc2d4a932003-04-01 11:13:05 +0000569NAME="AEN22899"
Daniel Veillardb36d4fe2001-11-28 13:40:42 +0000570></A
571><H3
572><A
573NAME="XMLFREEMUTEX"
574></A
Daniel Veillardaf43f632002-03-08 15:05:20 +0000575>xmlFreeMutex ()</H3
Daniel Veillardb36d4fe2001-11-28 13:40:42 +0000576><TABLE
577BORDER="0"
578BGCOLOR="#D6E8FF"
579WIDTH="100%"
580CELLPADDING="6"
581><TR
582><TD
583><PRE
584CLASS="PROGRAMLISTING"
585>void xmlFreeMutex (<A
586HREF="libxml-threads.html#XMLMUTEXPTR"
587>xmlMutexPtr</A
588> tok);</PRE
589></TD
590></TR
591></TABLE
592><P
593><A
594HREF="libxml-threads.html#XMLFREEMUTEX"
595>xmlFreeMutex</A
596>() is used to reclaim resources associated with a libxml2 token
597struct.</P
598><P
599></P
600><DIV
601CLASS="INFORMALTABLE"
602><A
Daniel Veillardc2d4a932003-04-01 11:13:05 +0000603NAME="AEN22907"
Daniel Veillardaec63562003-03-23 20:42:17 +0000604></A
605><P
Daniel Veillardb36d4fe2001-11-28 13:40:42 +0000606></P
607><TABLE
608BORDER="0"
609WIDTH="100%"
610BGCOLOR="#FFD0D0"
611CELLSPACING="0"
612CELLPADDING="4"
613CLASS="CALSTABLE"
614><TBODY
615><TR
616><TD
617WIDTH="20%"
618ALIGN="RIGHT"
619VALIGN="TOP"
620><TT
621CLASS="PARAMETER"
622><I
623>tok</I
624></TT
625>&nbsp;:</TD
626><TD
627WIDTH="80%"
628ALIGN="LEFT"
629VALIGN="TOP"
Daniel Veillardd8da01c2003-03-24 15:58:23 +0000630>&nbsp;</TD
Daniel Veillardb36d4fe2001-11-28 13:40:42 +0000631></TR
632></TBODY
633></TABLE
634><P
635></P
636></DIV
637></DIV
638><HR><DIV
639CLASS="REFSECT2"
640><A
Daniel Veillardc2d4a932003-04-01 11:13:05 +0000641NAME="AEN22916"
Daniel Veillardb36d4fe2001-11-28 13:40:42 +0000642></A
643><H3
644><A
645NAME="XMLNEWRMUTEX"
646></A
Daniel Veillardaf43f632002-03-08 15:05:20 +0000647>xmlNewRMutex ()</H3
Daniel Veillardb36d4fe2001-11-28 13:40:42 +0000648><TABLE
649BORDER="0"
650BGCOLOR="#D6E8FF"
651WIDTH="100%"
652CELLPADDING="6"
653><TR
654><TD
655><PRE
656CLASS="PROGRAMLISTING"
657><A
658HREF="libxml-threads.html#XMLRMUTEXPTR"
659>xmlRMutexPtr</A
660> xmlNewRMutex (void);</PRE
661></TD
662></TR
663></TABLE
664><P
Daniel Veillardaec63562003-03-23 20:42:17 +0000665><GTKDOCLINK
666HREF="XMLRNEWMUTEX"
667>xmlRNewMutex</GTKDOCLINK
668>() is used to allocate a reentrant mutex for use in
669synchronizing access to data. token_r is a re-entrant lock and thus useful
670for synchronizing access to data structures that may be manipulated in a
671recursive fashion.</P
672><P
Daniel Veillardb36d4fe2001-11-28 13:40:42 +0000673></P
674><DIV
675CLASS="INFORMALTABLE"
676><A
Daniel Veillardc2d4a932003-04-01 11:13:05 +0000677NAME="AEN22924"
Daniel Veillardaec63562003-03-23 20:42:17 +0000678></A
679><P
Daniel Veillardb36d4fe2001-11-28 13:40:42 +0000680></P
681><TABLE
682BORDER="0"
683WIDTH="100%"
684BGCOLOR="#FFD0D0"
685CELLSPACING="0"
686CELLPADDING="4"
687CLASS="CALSTABLE"
688><TBODY
689><TR
690><TD
691WIDTH="20%"
692ALIGN="RIGHT"
693VALIGN="TOP"
Daniel Veillard539638b2002-07-06 19:55:14 +0000694><SPAN
695CLASS="emphasis"
Daniel Veillardb36d4fe2001-11-28 13:40:42 +0000696><I
697CLASS="EMPHASIS"
698>Returns</I
Daniel Veillard539638b2002-07-06 19:55:14 +0000699></SPAN
Daniel Veillardb36d4fe2001-11-28 13:40:42 +0000700> :</TD
701><TD
702WIDTH="80%"
703ALIGN="LEFT"
704VALIGN="TOP"
Daniel Veillardd8da01c2003-03-24 15:58:23 +0000705>&nbsp;</TD
Daniel Veillardb36d4fe2001-11-28 13:40:42 +0000706></TR
707></TBODY
708></TABLE
709><P
710></P
711></DIV
712></DIV
713><HR><DIV
714CLASS="REFSECT2"
715><A
Daniel Veillardc2d4a932003-04-01 11:13:05 +0000716NAME="AEN22933"
Daniel Veillardb36d4fe2001-11-28 13:40:42 +0000717></A
718><H3
719><A
720NAME="XMLRMUTEXLOCK"
721></A
Daniel Veillardaf43f632002-03-08 15:05:20 +0000722>xmlRMutexLock ()</H3
Daniel Veillardb36d4fe2001-11-28 13:40:42 +0000723><TABLE
724BORDER="0"
725BGCOLOR="#D6E8FF"
726WIDTH="100%"
727CELLPADDING="6"
728><TR
729><TD
730><PRE
731CLASS="PROGRAMLISTING"
732>void xmlRMutexLock (<A
733HREF="libxml-threads.html#XMLRMUTEXPTR"
734>xmlRMutexPtr</A
735> tok);</PRE
736></TD
737></TR
738></TABLE
739><P
740><A
741HREF="libxml-threads.html#XMLRMUTEXLOCK"
742>xmlRMutexLock</A
743>() is used to lock a libxml2 token_r.</P
744><P
745></P
746><DIV
747CLASS="INFORMALTABLE"
748><A
Daniel Veillardc2d4a932003-04-01 11:13:05 +0000749NAME="AEN22941"
Daniel Veillardaec63562003-03-23 20:42:17 +0000750></A
751><P
Daniel Veillardb36d4fe2001-11-28 13:40:42 +0000752></P
753><TABLE
754BORDER="0"
755WIDTH="100%"
756BGCOLOR="#FFD0D0"
757CELLSPACING="0"
758CELLPADDING="4"
759CLASS="CALSTABLE"
760><TBODY
761><TR
762><TD
763WIDTH="20%"
764ALIGN="RIGHT"
765VALIGN="TOP"
766><TT
767CLASS="PARAMETER"
768><I
769>tok</I
770></TT
771>&nbsp;:</TD
772><TD
773WIDTH="80%"
774ALIGN="LEFT"
775VALIGN="TOP"
Daniel Veillardd8da01c2003-03-24 15:58:23 +0000776>&nbsp;</TD
Daniel Veillardb36d4fe2001-11-28 13:40:42 +0000777></TR
778></TBODY
779></TABLE
780><P
781></P
782></DIV
783></DIV
784><HR><DIV
785CLASS="REFSECT2"
786><A
Daniel Veillardc2d4a932003-04-01 11:13:05 +0000787NAME="AEN22950"
Daniel Veillardb36d4fe2001-11-28 13:40:42 +0000788></A
789><H3
790><A
791NAME="XMLRMUTEXUNLOCK"
792></A
Daniel Veillardaf43f632002-03-08 15:05:20 +0000793>xmlRMutexUnlock ()</H3
Daniel Veillardb36d4fe2001-11-28 13:40:42 +0000794><TABLE
795BORDER="0"
796BGCOLOR="#D6E8FF"
797WIDTH="100%"
798CELLPADDING="6"
799><TR
800><TD
801><PRE
802CLASS="PROGRAMLISTING"
803>void xmlRMutexUnlock (<A
804HREF="libxml-threads.html#XMLRMUTEXPTR"
805>xmlRMutexPtr</A
806> tok);</PRE
807></TD
808></TR
809></TABLE
810><P
811><A
812HREF="libxml-threads.html#XMLRMUTEXUNLOCK"
813>xmlRMutexUnlock</A
814>() is used to unlock a libxml2 token_r.</P
815><P
816></P
817><DIV
818CLASS="INFORMALTABLE"
819><A
Daniel Veillardc2d4a932003-04-01 11:13:05 +0000820NAME="AEN22958"
Daniel Veillardaec63562003-03-23 20:42:17 +0000821></A
822><P
Daniel Veillardb36d4fe2001-11-28 13:40:42 +0000823></P
824><TABLE
825BORDER="0"
826WIDTH="100%"
827BGCOLOR="#FFD0D0"
828CELLSPACING="0"
829CELLPADDING="4"
830CLASS="CALSTABLE"
831><TBODY
832><TR
833><TD
834WIDTH="20%"
835ALIGN="RIGHT"
836VALIGN="TOP"
837><TT
838CLASS="PARAMETER"
839><I
840>tok</I
841></TT
842>&nbsp;:</TD
843><TD
844WIDTH="80%"
845ALIGN="LEFT"
846VALIGN="TOP"
Daniel Veillardd8da01c2003-03-24 15:58:23 +0000847>&nbsp;</TD
Daniel Veillardb36d4fe2001-11-28 13:40:42 +0000848></TR
849></TBODY
850></TABLE
851><P
852></P
853></DIV
854></DIV
855><HR><DIV
856CLASS="REFSECT2"
857><A
Daniel Veillardc2d4a932003-04-01 11:13:05 +0000858NAME="AEN22967"
Daniel Veillardb36d4fe2001-11-28 13:40:42 +0000859></A
860><H3
861><A
862NAME="XMLFREERMUTEX"
863></A
Daniel Veillardaf43f632002-03-08 15:05:20 +0000864>xmlFreeRMutex ()</H3
Daniel Veillardb36d4fe2001-11-28 13:40:42 +0000865><TABLE
866BORDER="0"
867BGCOLOR="#D6E8FF"
868WIDTH="100%"
869CELLPADDING="6"
870><TR
871><TD
872><PRE
873CLASS="PROGRAMLISTING"
874>void xmlFreeRMutex (<A
875HREF="libxml-threads.html#XMLRMUTEXPTR"
876>xmlRMutexPtr</A
877> tok);</PRE
878></TD
879></TR
880></TABLE
881><P
Daniel Veillardaec63562003-03-23 20:42:17 +0000882><GTKDOCLINK
883HREF="XMLRFREEMUTEX"
884>xmlRFreeMutex</GTKDOCLINK
885>() is used to reclaim resources associated with a
886reentrant mutex.</P
887><P
Daniel Veillardb36d4fe2001-11-28 13:40:42 +0000888></P
889><DIV
890CLASS="INFORMALTABLE"
891><A
Daniel Veillardc2d4a932003-04-01 11:13:05 +0000892NAME="AEN22975"
Daniel Veillardaec63562003-03-23 20:42:17 +0000893></A
894><P
Daniel Veillardb36d4fe2001-11-28 13:40:42 +0000895></P
896><TABLE
897BORDER="0"
898WIDTH="100%"
899BGCOLOR="#FFD0D0"
900CELLSPACING="0"
901CELLPADDING="4"
902CLASS="CALSTABLE"
903><TBODY
904><TR
905><TD
906WIDTH="20%"
907ALIGN="RIGHT"
908VALIGN="TOP"
909><TT
910CLASS="PARAMETER"
911><I
912>tok</I
913></TT
914>&nbsp;:</TD
915><TD
916WIDTH="80%"
917ALIGN="LEFT"
918VALIGN="TOP"
Daniel Veillardd8da01c2003-03-24 15:58:23 +0000919>&nbsp;</TD
Daniel Veillardb36d4fe2001-11-28 13:40:42 +0000920></TR
921></TBODY
922></TABLE
923><P
924></P
925></DIV
926></DIV
927><HR><DIV
928CLASS="REFSECT2"
929><A
Daniel Veillardc2d4a932003-04-01 11:13:05 +0000930NAME="AEN22984"
Daniel Veillardb36d4fe2001-11-28 13:40:42 +0000931></A
932><H3
933><A
934NAME="XMLINITTHREADS"
935></A
Daniel Veillardaf43f632002-03-08 15:05:20 +0000936>xmlInitThreads ()</H3
Daniel Veillardb36d4fe2001-11-28 13:40:42 +0000937><TABLE
938BORDER="0"
939BGCOLOR="#D6E8FF"
940WIDTH="100%"
941CELLPADDING="6"
942><TR
943><TD
944><PRE
945CLASS="PROGRAMLISTING"
946>void xmlInitThreads (void);</PRE
947></TD
948></TR
949></TABLE
950><P
951><A
952HREF="libxml-threads.html#XMLINITTHREADS"
953>xmlInitThreads</A
954>() is used to to initialize all the thread related
955data of the libxml2 library.</P
956><P
957></P
958></DIV
959><HR><DIV
960CLASS="REFSECT2"
961><A
Daniel Veillardc2d4a932003-04-01 11:13:05 +0000962NAME="AEN22991"
Daniel Veillardb36d4fe2001-11-28 13:40:42 +0000963></A
964><H3
965><A
966NAME="XMLLOCKLIBRARY"
967></A
Daniel Veillardaf43f632002-03-08 15:05:20 +0000968>xmlLockLibrary ()</H3
Daniel Veillardb36d4fe2001-11-28 13:40:42 +0000969><TABLE
970BORDER="0"
971BGCOLOR="#D6E8FF"
972WIDTH="100%"
973CELLPADDING="6"
974><TR
975><TD
976><PRE
977CLASS="PROGRAMLISTING"
978>void xmlLockLibrary (void);</PRE
979></TD
980></TR
981></TABLE
982><P
983><A
984HREF="libxml-threads.html#XMLLOCKLIBRARY"
985>xmlLockLibrary</A
986>() is used to take out a re-entrant lock on the libxml2
987library.</P
988><P
989></P
990></DIV
991><HR><DIV
992CLASS="REFSECT2"
993><A
Daniel Veillardc2d4a932003-04-01 11:13:05 +0000994NAME="AEN22998"
Daniel Veillardb36d4fe2001-11-28 13:40:42 +0000995></A
996><H3
997><A
998NAME="XMLUNLOCKLIBRARY"
999></A
Daniel Veillardaf43f632002-03-08 15:05:20 +00001000>xmlUnlockLibrary ()</H3
Daniel Veillardb36d4fe2001-11-28 13:40:42 +00001001><TABLE
1002BORDER="0"
1003BGCOLOR="#D6E8FF"
1004WIDTH="100%"
1005CELLPADDING="6"
1006><TR
1007><TD
1008><PRE
1009CLASS="PROGRAMLISTING"
1010>void xmlUnlockLibrary (void);</PRE
1011></TD
1012></TR
1013></TABLE
1014><P
1015><A
1016HREF="libxml-threads.html#XMLUNLOCKLIBRARY"
1017>xmlUnlockLibrary</A
1018>() is used to release a re-entrant lock on the libxml2
1019library.</P
1020><P
1021></P
1022></DIV
1023><HR><DIV
1024CLASS="REFSECT2"
1025><A
Daniel Veillardc2d4a932003-04-01 11:13:05 +00001026NAME="AEN23005"
Daniel Veillardb36d4fe2001-11-28 13:40:42 +00001027></A
1028><H3
1029><A
1030NAME="XMLGETTHREADID"
1031></A
Daniel Veillardaf43f632002-03-08 15:05:20 +00001032>xmlGetThreadId ()</H3
Daniel Veillardb36d4fe2001-11-28 13:40:42 +00001033><TABLE
1034BORDER="0"
1035BGCOLOR="#D6E8FF"
1036WIDTH="100%"
1037CELLPADDING="6"
1038><TR
1039><TD
1040><PRE
1041CLASS="PROGRAMLISTING"
1042>int xmlGetThreadId (void);</PRE
1043></TD
1044></TR
1045></TABLE
1046><P
1047><A
1048HREF="libxml-threads.html#XMLGETTHREADID"
1049>xmlGetThreadId</A
1050>() find the current thread ID number</P
1051><P
1052></P
1053><DIV
1054CLASS="INFORMALTABLE"
1055><A
Daniel Veillardc2d4a932003-04-01 11:13:05 +00001056NAME="AEN23012"
Daniel Veillardaec63562003-03-23 20:42:17 +00001057></A
1058><P
Daniel Veillardb36d4fe2001-11-28 13:40:42 +00001059></P
1060><TABLE
1061BORDER="0"
1062WIDTH="100%"
1063BGCOLOR="#FFD0D0"
1064CELLSPACING="0"
1065CELLPADDING="4"
1066CLASS="CALSTABLE"
1067><TBODY
1068><TR
1069><TD
1070WIDTH="20%"
1071ALIGN="RIGHT"
1072VALIGN="TOP"
Daniel Veillard539638b2002-07-06 19:55:14 +00001073><SPAN
1074CLASS="emphasis"
Daniel Veillardb36d4fe2001-11-28 13:40:42 +00001075><I
1076CLASS="EMPHASIS"
1077>Returns</I
Daniel Veillard539638b2002-07-06 19:55:14 +00001078></SPAN
Daniel Veillardb36d4fe2001-11-28 13:40:42 +00001079> :</TD
1080><TD
1081WIDTH="80%"
1082ALIGN="LEFT"
1083VALIGN="TOP"
Daniel Veillardd8da01c2003-03-24 15:58:23 +00001084>&nbsp;</TD
Daniel Veillardb36d4fe2001-11-28 13:40:42 +00001085></TR
1086></TBODY
1087></TABLE
1088><P
1089></P
1090></DIV
1091></DIV
1092><HR><DIV
1093CLASS="REFSECT2"
1094><A
Daniel Veillardc2d4a932003-04-01 11:13:05 +00001095NAME="AEN23021"
Daniel Veillardb36d4fe2001-11-28 13:40:42 +00001096></A
1097><H3
1098><A
1099NAME="XMLISMAINTHREAD"
1100></A
Daniel Veillardaf43f632002-03-08 15:05:20 +00001101>xmlIsMainThread ()</H3
Daniel Veillardb36d4fe2001-11-28 13:40:42 +00001102><TABLE
1103BORDER="0"
1104BGCOLOR="#D6E8FF"
1105WIDTH="100%"
1106CELLPADDING="6"
1107><TR
1108><TD
1109><PRE
1110CLASS="PROGRAMLISTING"
1111>int xmlIsMainThread (void);</PRE
1112></TD
1113></TR
1114></TABLE
1115><P
1116><A
1117HREF="libxml-threads.html#XMLISMAINTHREAD"
1118>xmlIsMainThread</A
Daniel Veillardcbaf3992001-12-31 16:16:02 +00001119>() check whether the current thread is the main thread.</P
Daniel Veillardb36d4fe2001-11-28 13:40:42 +00001120><P
1121></P
1122><DIV
1123CLASS="INFORMALTABLE"
1124><A
Daniel Veillardc2d4a932003-04-01 11:13:05 +00001125NAME="AEN23028"
Daniel Veillardaec63562003-03-23 20:42:17 +00001126></A
1127><P
Daniel Veillardb36d4fe2001-11-28 13:40:42 +00001128></P
1129><TABLE
1130BORDER="0"
1131WIDTH="100%"
1132BGCOLOR="#FFD0D0"
1133CELLSPACING="0"
1134CELLPADDING="4"
1135CLASS="CALSTABLE"
1136><TBODY
1137><TR
1138><TD
1139WIDTH="20%"
1140ALIGN="RIGHT"
1141VALIGN="TOP"
Daniel Veillard539638b2002-07-06 19:55:14 +00001142><SPAN
1143CLASS="emphasis"
Daniel Veillardb36d4fe2001-11-28 13:40:42 +00001144><I
1145CLASS="EMPHASIS"
1146>Returns</I
Daniel Veillard539638b2002-07-06 19:55:14 +00001147></SPAN
Daniel Veillardb36d4fe2001-11-28 13:40:42 +00001148> :</TD
1149><TD
1150WIDTH="80%"
1151ALIGN="LEFT"
1152VALIGN="TOP"
Daniel Veillardd8da01c2003-03-24 15:58:23 +00001153>&nbsp;</TD
Daniel Veillardb36d4fe2001-11-28 13:40:42 +00001154></TR
1155></TBODY
1156></TABLE
1157><P
1158></P
1159></DIV
1160></DIV
1161><HR><DIV
1162CLASS="REFSECT2"
1163><A
Daniel Veillardc2d4a932003-04-01 11:13:05 +00001164NAME="AEN23037"
Daniel Veillardb36d4fe2001-11-28 13:40:42 +00001165></A
1166><H3
1167><A
1168NAME="XMLCLEANUPTHREADS"
1169></A
Daniel Veillardaf43f632002-03-08 15:05:20 +00001170>xmlCleanupThreads ()</H3
Daniel Veillardb36d4fe2001-11-28 13:40:42 +00001171><TABLE
1172BORDER="0"
1173BGCOLOR="#D6E8FF"
1174WIDTH="100%"
1175CELLPADDING="6"
1176><TR
1177><TD
1178><PRE
1179CLASS="PROGRAMLISTING"
1180>void xmlCleanupThreads (void);</PRE
1181></TD
1182></TR
1183></TABLE
1184><P
1185><A
1186HREF="libxml-threads.html#XMLCLEANUPTHREADS"
1187>xmlCleanupThreads</A
1188>() is used to to cleanup all the thread related
1189data of the libxml2 library once processing has ended.</P
1190><P
1191></P
1192></DIV
1193><HR><DIV
1194CLASS="REFSECT2"
1195><A
Daniel Veillardc2d4a932003-04-01 11:13:05 +00001196NAME="AEN23044"
Daniel Veillardb36d4fe2001-11-28 13:40:42 +00001197></A
1198><H3
1199><A
1200NAME="XMLGETGLOBALSTATE"
1201></A
Daniel Veillardaf43f632002-03-08 15:05:20 +00001202>xmlGetGlobalState ()</H3
Daniel Veillardb36d4fe2001-11-28 13:40:42 +00001203><TABLE
1204BORDER="0"
1205BGCOLOR="#D6E8FF"
1206WIDTH="100%"
1207CELLPADDING="6"
1208><TR
1209><TD
1210><PRE
1211CLASS="PROGRAMLISTING"
1212><A
1213HREF="libxml-globals.html#XMLGLOBALSTATEPTR"
1214>xmlGlobalStatePtr</A
1215> xmlGetGlobalState (void);</PRE
1216></TD
1217></TR
1218></TABLE
1219><P
1220><A
1221HREF="libxml-threads.html#XMLGETGLOBALSTATE"
1222>xmlGetGlobalState</A
Daniel Veillardef90ba72001-12-07 14:24:22 +00001223>() is called to retrieve the global state for a thread.</P
Daniel Veillardb36d4fe2001-11-28 13:40:42 +00001224><P
1225></P
1226><DIV
1227CLASS="INFORMALTABLE"
1228><A
Daniel Veillardc2d4a932003-04-01 11:13:05 +00001229NAME="AEN23052"
Daniel Veillardaec63562003-03-23 20:42:17 +00001230></A
1231><P
Daniel Veillardb36d4fe2001-11-28 13:40:42 +00001232></P
1233><TABLE
1234BORDER="0"
1235WIDTH="100%"
1236BGCOLOR="#FFD0D0"
1237CELLSPACING="0"
1238CELLPADDING="4"
1239CLASS="CALSTABLE"
1240><TBODY
1241><TR
1242><TD
1243WIDTH="20%"
1244ALIGN="RIGHT"
1245VALIGN="TOP"
Daniel Veillard539638b2002-07-06 19:55:14 +00001246><SPAN
1247CLASS="emphasis"
Daniel Veillardb36d4fe2001-11-28 13:40:42 +00001248><I
1249CLASS="EMPHASIS"
1250>Returns</I
Daniel Veillard539638b2002-07-06 19:55:14 +00001251></SPAN
Daniel Veillardb36d4fe2001-11-28 13:40:42 +00001252> :</TD
1253><TD
1254WIDTH="80%"
1255ALIGN="LEFT"
1256VALIGN="TOP"
Daniel Veillardd8da01c2003-03-24 15:58:23 +00001257>&nbsp;</TD
Daniel Veillardb36d4fe2001-11-28 13:40:42 +00001258></TR
1259></TBODY
1260></TABLE
1261><P
1262></P
1263></DIV
1264></DIV
1265></DIV
1266><DIV
1267CLASS="NAVFOOTER"
1268><BR
1269CLEAR="all"><BR><TABLE
1270WIDTH="100%"
1271BORDER="0"
1272BGCOLOR="#000000"
1273CELLPADDING="1"
1274CELLSPACING="0"
1275><TR
1276><TD
1277WIDTH="25%"
1278BGCOLOR="#C00000"
1279ALIGN="left"
1280><A
Daniel Veillardaf43f632002-03-08 15:05:20 +00001281HREF="libxml-c14n.html"
Daniel Veillardb36d4fe2001-11-28 13:40:42 +00001282><FONT
1283COLOR="#FFFFFF"
1284SIZE="3"
1285><B
1286>&#60;&#60;&#60; Previous Page</B
1287></FONT
1288></A
1289></TD
1290><TD
1291WIDTH="25%"
1292BGCOLOR="#0000C0"
1293ALIGN="center"
1294><FONT
1295COLOR="#FFFFFF"
1296SIZE="3"
1297><B
1298><A
1299HREF="book1.html"
1300><FONT
1301COLOR="#FFFFFF"
1302SIZE="3"
1303><B
1304>Home</B
1305></FONT
1306></A
1307></B
1308></FONT
1309></TD
1310><TD
1311WIDTH="25%"
1312BGCOLOR="#00C000"
1313ALIGN="center"
1314><FONT
1315COLOR="#FFFFFF"
1316SIZE="3"
1317><B
1318><A
1319HREF="libxml-lib.html"
1320><FONT
1321COLOR="#FFFFFF"
1322SIZE="3"
1323><B
1324>Up</B
1325></FONT
1326></A
1327></B
1328></FONT
1329></TD
1330><TD
1331WIDTH="25%"
1332BGCOLOR="#C00000"
1333ALIGN="right"
1334><A
1335HREF="libxml-globals.html"
1336><FONT
1337COLOR="#FFFFFF"
1338SIZE="3"
1339><B
1340>Next Page &#62;&#62;&#62;</B
1341></FONT
1342></A
1343></TD
1344></TR
1345><TR
1346><TD
1347COLSPAN="2"
1348ALIGN="left"
1349><FONT
1350COLOR="#FFFFFF"
1351SIZE="3"
1352><B
Daniel Veillardaf43f632002-03-08 15:05:20 +00001353>c14n</B
Daniel Veillardb36d4fe2001-11-28 13:40:42 +00001354></FONT
1355></TD
1356><TD
1357COLSPAN="2"
1358ALIGN="right"
1359><FONT
1360COLOR="#FFFFFF"
1361SIZE="3"
1362><B
1363>globals</B
1364></FONT
1365></TD
1366></TR
1367></TABLE
1368></DIV
1369></BODY
1370></HTML
1371>