<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"> <html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"> <title>thread.h File Reference</title> <link href="doxygen.css" rel="stylesheet" type="text/css"> </head><body bgcolor="#ffffff"> <!-- Generated by Doxygen 1.2.10 --> <center> <a class="qindex" href="index.html">Main Page</a> <a class="qindex" href="namespaces.html">Namespace List</a> <a class="qindex" href="hierarchy.html">Class Hierarchy</a> <a class="qindex" href="classes.html">Alphabetical List</a> <a class="qindex" href="annotated.html">Compound List</a> <a class="qindex" href="files.html">File List</a> <a class="qindex" href="namespacemembers.html">Namespace Members</a> <a class="qindex" href="functions.html">Compound Members</a> <a class="qindex" href="globals.html">File Members</a> </center> <hr><h1>thread.h File Reference</h1><code>#include <cc++/config.h></code><br> <code>#include <<a class="el" href="exception_8h-source.html">cc++/exception.h</a>></code><br> <code>#include <setjmp.h></code><br> <code>#include <time.h></code><br> <code>#include <signal.h></code><br> <code>#include <unistd.h></code><br> <p> <a href="thread_8h-source.html">Go to the source code of this file.</a><table border=0 cellpadding=0 cellspacing=0> <tr><td colspan=2><br><h2>Namespaces</h2></td></tr> <tr><td nowrap align=right valign=top>namespace </td><td valign=bottom><a class="el" href="namespaceost.html">ost</a></td></tr> <tr><td colspan=2><br><h2>Defines</h2></td></tr> <tr><td nowrap align=right valign=top>#define </td><td valign=bottom><a class="el" href="thread_8h.html#a0">CCXX_POSIX</a></td></tr> <tr><td nowrap align=right valign=top>#define </td><td valign=bottom><a class="el" href="thread_8h.html#a1">TIMEOUT_INF</a> ~((<a class="el" href="thread_8h.html#a11">timeout_t</a>) 0)</td></tr> <tr><td nowrap align=right valign=top>#define </td><td valign=bottom><a class="el" href="thread_8h.html#a2">ENTER_CRITICAL</a> EnterMutex();</td></tr> <tr><td nowrap align=right valign=top>#define </td><td valign=bottom><a class="el" href="thread_8h.html#a3">LEAVE_CRITICAL</a> LeaveMutex();</td></tr> <tr><td nowrap align=right valign=top>#define </td><td valign=bottom><a class="el" href="thread_8h.html#a4">ENTER_DEFERRED</a> setCancel(THREAD_CANCEL_DEFERRED);</td></tr> <tr><td nowrap align=right valign=top>#define </td><td valign=bottom><a class="el" href="thread_8h.html#a5">LEAVE_DEFERRED</a> setCancel(THREAD_CANCEL_IMMEDIATE);</td></tr> <tr><td nowrap align=right valign=top>#define </td><td valign=bottom><a class="el" href="thread_8h.html#a6">psleep</a>(x) (sleep)(x)</td></tr> <tr><td nowrap align=right valign=top>#define </td><td valign=bottom><a class="el" href="thread_8h.html#a7">sleep</a>(x) ccxx_sleep((x) * 1000)</td></tr> <tr><td nowrap align=right valign=top>#define </td><td valign=bottom><a class="el" href="thread_8h.html#a8">yield</a>() ccxx_yield()</td></tr> <tr><td nowrap align=right valign=top>#define </td><td valign=bottom><a class="el" href="thread_8h.html#a9">CCXX_USE_POLL</a> 1</td></tr> <tr><td colspan=2><br><h2>Typedefs</h2></td></tr> <tr><td nowrap align=right valign=top>typedef pthread_t </td><td valign=bottom><a class="el" href="thread_8h.html#a10">cctid_t</a></td></tr> <tr><td nowrap align=right valign=top>typedef unsigned long </td><td valign=bottom><a class="el" href="thread_8h.html#a11">timeout_t</a></td></tr> </table> <hr><h2>Define Documentation</h2> <a name="a0" doxytag="thread.h::CCXX_POSIX"></a><p> <table width="100%" cellpadding="2" cellspacing="0" border="0"> <tr> <td class="md"> <table cellpadding="0" cellspacing="0" border="0"> <tr> <td class="md" nowrap valign="top"> #define CCXX_POSIX </table> </td> </tr> </table> <table cellspacing=5 cellpadding=0 border=0> <tr> <td> </td> <td> <p> </td> </tr> </table> <a name="a9" doxytag="thread.h::CCXX_USE_POLL"></a><p> <table width="100%" cellpadding="2" cellspacing="0" border="0"> <tr> <td class="md"> <table cellpadding="0" cellspacing="0" border="0"> <tr> <td class="md" nowrap valign="top"> #define CCXX_USE_POLL 1 </table> </td> </tr> </table> <table cellspacing=5 cellpadding=0 border=0> <tr> <td> </td> <td> <p> </td> </tr> </table> <a name="a2" doxytag="thread.h::ENTER_CRITICAL"></a><p> <table width="100%" cellpadding="2" cellspacing="0" border="0"> <tr> <td class="md"> <table cellpadding="0" cellspacing="0" border="0"> <tr> <td class="md" nowrap valign="top"> #define ENTER_CRITICAL EnterMutex(); </table> </td> </tr> </table> <table cellspacing=5 cellpadding=0 border=0> <tr> <td> </td> <td> <p> </td> </tr> </table> <a name="a4" doxytag="thread.h::ENTER_DEFERRED"></a><p> <table width="100%" cellpadding="2" cellspacing="0" border="0"> <tr> <td class="md"> <table cellpadding="0" cellspacing="0" border="0"> <tr> <td class="md" nowrap valign="top"> #define ENTER_DEFERRED setCancel(THREAD_CANCEL_DEFERRED); </table> </td> </tr> </table> <table cellspacing=5 cellpadding=0 border=0> <tr> <td> </td> <td> <p> </td> </tr> </table> <a name="a3" doxytag="thread.h::LEAVE_CRITICAL"></a><p> <table width="100%" cellpadding="2" cellspacing="0" border="0"> <tr> <td class="md"> <table cellpadding="0" cellspacing="0" border="0"> <tr> <td class="md" nowrap valign="top"> #define LEAVE_CRITICAL LeaveMutex(); </table> </td> </tr> </table> <table cellspacing=5 cellpadding=0 border=0> <tr> <td> </td> <td> <p> </td> </tr> </table> <a name="a5" doxytag="thread.h::LEAVE_DEFERRED"></a><p> <table width="100%" cellpadding="2" cellspacing="0" border="0"> <tr> <td class="md"> <table cellpadding="0" cellspacing="0" border="0"> <tr> <td class="md" nowrap valign="top"> #define LEAVE_DEFERRED setCancel(THREAD_CANCEL_IMMEDIATE); </table> </td> </tr> </table> <table cellspacing=5 cellpadding=0 border=0> <tr> <td> </td> <td> <p> </td> </tr> </table> <a name="a1" doxytag="thread.h::TIMEOUT_INF"></a><p> <table width="100%" cellpadding="2" cellspacing="0" border="0"> <tr> <td class="md"> <table cellpadding="0" cellspacing="0" border="0"> <tr> <td class="md" nowrap valign="top"> #define TIMEOUT_INF ~((<a class="el" href="thread_8h.html#a11">timeout_t</a>) 0) </table> </td> </tr> </table> <table cellspacing=5 cellpadding=0 border=0> <tr> <td> </td> <td> <p> </td> </tr> </table> <a name="a6" doxytag="thread.h::psleep"></a><p> <table width="100%" cellpadding="2" cellspacing="0" border="0"> <tr> <td class="md"> <table cellpadding="0" cellspacing="0" border="0"> <tr> <td class="md" nowrap valign="top"> #define psleep</td> <td class="md">( </td> <td class="md">x</td> <td class="mdname1"> </td> <td class="md">) </td> <td class="md"> (sleep)(x) </table> </td> </tr> </table> <table cellspacing=5 cellpadding=0 border=0> <tr> <td> </td> <td> <p> </td> </tr> </table> <a name="a7" doxytag="thread.h::sleep"></a><p> <table width="100%" cellpadding="2" cellspacing="0" border="0"> <tr> <td class="md"> <table cellpadding="0" cellspacing="0" border="0"> <tr> <td class="md" nowrap valign="top"> #define sleep</td> <td class="md">( </td> <td class="md">x</td> <td class="mdname1"> </td> <td class="md">) </td> <td class="md"> ccxx_sleep((x) * 1000) </table> </td> </tr> </table> <table cellspacing=5 cellpadding=0 border=0> <tr> <td> </td> <td> <p> </td> </tr> </table> <a name="a8" doxytag="thread.h::yield"></a><p> <table width="100%" cellpadding="2" cellspacing="0" border="0"> <tr> <td class="md"> <table cellpadding="0" cellspacing="0" border="0"> <tr> <td class="md" nowrap valign="top"> #define yield</td> <td class="md">( </td> </td> <td class="mdname1"> </td> <td class="md">) </td> <td class="md"> ccxx_yield() </table> </td> </tr> </table> <table cellspacing=5 cellpadding=0 border=0> <tr> <td> </td> <td> <p> </td> </tr> </table> <hr><h2>Typedef Documentation</h2> <a name="a10" doxytag="thread.h::cctid_t"></a><p> <table width="100%" cellpadding="2" cellspacing="0" border="0"> <tr> <td class="md"> <table cellpadding="0" cellspacing="0" border="0"> <tr> <td class="md" nowrap valign="top"> typedef pthread_t cctid_t </table> </td> </tr> </table> <table cellspacing=5 cellpadding=0 border=0> <tr> <td> </td> <td> <p> </td> </tr> </table> <a name="a11" doxytag="thread.h::timeout_t"></a><p> <table width="100%" cellpadding="2" cellspacing="0" border="0"> <tr> <td class="md"> <table cellpadding="0" cellspacing="0" border="0"> <tr> <td class="md" nowrap valign="top"> typedef unsigned long timeout_t </table> </td> </tr> </table> <table cellspacing=5 cellpadding=0 border=0> <tr> <td> </td> <td> <p> </td> </tr> </table> <hr><address><small>Generated at Fri Jan 4 18:51:46 2002 for CommonC++ by <a href="http://www.doxygen.org/index.html"> <img src="doxygen.gif" alt="doxygen" align="middle" border=0 width=110 height=53></a>1.2.10 written by <a href="mailto:dimitri@stack.nl">Dimitri van Heesch</a>, © 1997-2001</small></address> </body> </html>