1<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
2<html>
3
4<head>
5<META http-equiv="Content-Type" content="text/html; charset=windows-1252">
6<META name="GENERATOR" content="Microsoft FrontPage 5.0">
7<META http-equiv="Content-Style-Type" content="text/css">
8<LINK rel="stylesheet" type="text/css" href="../../CSS/revolution.css">
9<title>OSJoinThread</title>
10</head>
11
12<body>
13
14<h1>OSJoinThread</h1>
15
16
17<h2>C Specification</h2>
18
19<dl>
20  <dd><pre><code>#include &lt;revolution/os.h&gt;</code></pre>
21  </dd>
22  <dd><pre><code>BOOL OSJoinThread(OSThread* thread, void** val);</code></pre>
23  </dd>
24</dl>
25
26<h2>Arguments</h2>
27<TABLE border="1" cellpadding="3" cellspacing="0.1">
28  <tr>
29<TD width="120" bgcolor="#ffffe8"><i><b><code>thread</code></b></i></TD>
30<TD width="520">Pointer to thread to join.</TD>
31    </tr>
32  <tr>
33<TD width="120" bgcolor="#ffffe8"><i><b><code>val</code></b></i></TD>
34<TD width="520">Pointer to a void pointer in which the thread's exit value is copied. <STRONG><EM><CODE>val</CODE></EM></STRONG> will be assigned <code>(void*) -1</code> if the thread is canceled using <a     href="OSCancelThread.html"><code>OSCancelThread</code></a>. Specify <code>NULL</code> if the thread's exit value is not necessary.</TD>
35    </tr>
36</TABLE>
37<h2>Return Values</h2>
38
39<p>Returns <code>TRUE</code> if the specified thread is not detacheed and has terminated normally; otherwise, returns <code>FALSE</code>.</p>
40
41<h2>Description</h2>
42
43<p>As long as the specified thread is not &quot;detached&quot; (see <a href="OSDetachThread.html"><code>OSDetachThread</code></a>), the <code>OSJoinThread</code> function will wait for the specified thread to terminate and then generate information regarding the terminated thread.</p>
44
45<p>More than one thread cannot have the same thread termination. Success is only guaranteed for one thread, and <code>FALSE</code> is returned for all other threads.</p>
46
47<p>This function may put the current thread to sleep. For precautions when calling similar functions, refer to <a href="../Interrupt/intro.html">Interrupts and Callback Functions</a>.</p>
48
49<h2>See Also</h2>
50
51<p><A href="../toc.html#Thread" target="contents">Thread Synchronization</A>, <A href="../toc.html#ThreadSynchronization" target="contents">Thread Synchronization Functions</A>,<br> <a href="OSCancelThread.html"><code>OSCancelThread</code></a>, <a href="OSDetachThread.html"><code>OSDetachThread</code></a>, <a href="OSExitThread.html"><code>OSExitThread</code></a>, <a href="OSIsThreadTerminated.html"><code>OSIsThreadTerminated</code></a>,&nbsp; <a href="../Interrupt/intro.html">Interrupts and Callback Functions</a></p>
52
53<h2>Revision History</h2><p></p>
54<p>
552007/09/25 Added information on the sleeping status of threads.<br>2006/03/01 Initial version. <br>
56</p>
57<hr><p>CONFIDENTIAL</p></body>
58</html>