Sophie

Sophie

distrib > Fedora > 18 > i386 > by-pkgid > 5b095c1dcccf87f92298aa569e0d8cd3 > files > 55

globus-common-doc-14.10-2.fc18.noarch.rpm

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<html><head><meta name="robots" content="noindex">
<meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
<!-- THIS FILE IS AUTOMATICALLY GENERATED FROM THE GLOBUS SOURCE CODE
     DO NOT MODIFY.
-->
<title>Globus Reference Manual</title>
<link href="doxygen.css" rel="stylesheet" type="text/css">
<link href="tabs.css" rel="stylesheet" type="text/css">
</head>
<body>
<!-- Generated by Doxygen 1.8.3.1 -->
  <div id="navrow1" class="tabs">
    <ul class="tablist">
      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
      <li><a href="pages.html"><span>Related&#160;Pages</span></a></li>
      <li><a href="modules.html"><span>Modules</span></a></li>
      <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
    </ul>
  </div>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
  <div id="nav-tree">
    <div id="nav-tree-contents">
      <div id="nav-sync" class="sync"></div>
    </div>
  </div>
  <div id="splitbar" style="-moz-user-select:none;" 
       class="ui-resizable-handle">
  </div>
</div>
<script type="text/javascript">
$(document).ready(function(){initNavTree('group__globus__cond.html','');});
</script>
<div id="doc-content">
<div class="header">
  <div class="summary">
<a href="#nested-classes">Data Structures</a> &#124;
<a href="#func-members">Functions</a>  </div>
  <div class="headertitle">
<div class="title">Condition Variables<div class="ingroups"><a class="el" href="group__globus__thread.html">Threading</a></div></div>  </div>
</div><!--header-->
<div class="contents">
<div class="dynheader">
Collaboration diagram for Condition Variables:</div>
<div class="dyncontent">
<center><table><tr><td><img src="group__globus__cond.png" border="0" alt="" usemap="#group____globus____cond"/>
<map name="group____globus____cond" id="group____globus____cond">
<area shape="rect" id="node1" href="group__globus__thread.html" title="The Globus runtime includes support for portably creating threads on POSIX and Windows systems..." alt="" coords="6,5,85,32"/></map>
</td></tr></table></center>
</div>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
Data Structures</h2></td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">union &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="unionglobus__cond__t.html">globus_cond_t</a></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">union &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="unionglobus__condattr__t.html">globus_condattr_t</a></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
Functions</h2></td></tr>
<tr class="memitem:ga1c074938c3f7c436bb6c3248a698533a"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__globus__cond.html#ga1c074938c3f7c436bb6c3248a698533a">globus_cond_init</a> (<a class="el" href="unionglobus__cond__t.html">globus_cond_t</a> *cond, <a class="el" href="unionglobus__condattr__t.html">globus_condattr_t</a> *attr)</td></tr>
<tr class="separator:ga1c074938c3f7c436bb6c3248a698533a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga4eb0f26fc152d2c2ec956cfde24e4190"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__globus__cond.html#ga4eb0f26fc152d2c2ec956cfde24e4190">globus_cond_destroy</a> (<a class="el" href="unionglobus__cond__t.html">globus_cond_t</a> *cond)</td></tr>
<tr class="separator:ga4eb0f26fc152d2c2ec956cfde24e4190"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga9b58106e5b1b2545ab45db0e3e4f98b0"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__globus__cond.html#ga9b58106e5b1b2545ab45db0e3e4f98b0">globus_cond_wait</a> (<a class="el" href="unionglobus__cond__t.html">globus_cond_t</a> *cond, <a class="el" href="unionglobus__mutex__t.html">globus_mutex_t</a> *mutex)</td></tr>
<tr class="separator:ga9b58106e5b1b2545ab45db0e3e4f98b0"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gaaeabb30d3449c1d693b02241f92fd6b5"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__globus__cond.html#gaaeabb30d3449c1d693b02241f92fd6b5">globus_cond_timedwait</a> (<a class="el" href="unionglobus__cond__t.html">globus_cond_t</a> *cond, <a class="el" href="unionglobus__mutex__t.html">globus_mutex_t</a> *mutex, globus_abstime_t *abstime)</td></tr>
<tr class="separator:gaaeabb30d3449c1d693b02241f92fd6b5"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga05a56b1f671782a6a2c0d2c72292dd47"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__globus__cond.html#ga05a56b1f671782a6a2c0d2c72292dd47">globus_cond_signal</a> (<a class="el" href="unionglobus__cond__t.html">globus_cond_t</a> *cond)</td></tr>
<tr class="separator:ga05a56b1f671782a6a2c0d2c72292dd47"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga380d237b678089096a9e23487b20393f"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__globus__cond.html#ga380d237b678089096a9e23487b20393f">globus_cond_broadcast</a> (<a class="el" href="unionglobus__cond__t.html">globus_cond_t</a> *cond)</td></tr>
<tr class="separator:ga380d237b678089096a9e23487b20393f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga2d3d2973d1d31d574ea3eb524bea0304"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__globus__cond.html#ga2d3d2973d1d31d574ea3eb524bea0304">globus_condattr_init</a> (<a class="el" href="unionglobus__condattr__t.html">globus_condattr_t</a> *cond_attr)</td></tr>
<tr class="separator:ga2d3d2973d1d31d574ea3eb524bea0304"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga0a0ed173728c392dc6778ec913c40c31"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__globus__cond.html#ga0a0ed173728c392dc6778ec913c40c31">globus_condattr_destroy</a> (<a class="el" href="unionglobus__condattr__t.html">globus_condattr_t</a> *cond_attr)</td></tr>
<tr class="separator:ga0a0ed173728c392dc6778ec913c40c31"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gacca6f5cb093ac7aed78c91416f85843f"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__globus__cond.html#gacca6f5cb093ac7aed78c91416f85843f">globus_condattr_setspace</a> (<a class="el" href="unionglobus__condattr__t.html">globus_condattr_t</a> *cond_attr, int space)</td></tr>
<tr class="separator:gacca6f5cb093ac7aed78c91416f85843f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gaacfdc80dc9721a8cd2f8ebe9b999f46a"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__globus__cond.html#gaacfdc80dc9721a8cd2f8ebe9b999f46a">globus_condattr_getspace</a> (<a class="el" href="unionglobus__condattr__t.html">globus_condattr_t</a> *cond_attr, int *space)</td></tr>
<tr class="separator:gaacfdc80dc9721a8cd2f8ebe9b999f46a"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<p>The <a class="el" href="unionglobus__cond__t.html" title="Condition variable.">globus_cond_t</a> provides condition variables for signalling events between threads interested in particular state. One or many threads may wait on a condition variable until it is signalled, at which point they can attempt to lock a mutex related to that condition's state and process the event.</p>
<p>In a non-threaded model, the condition variable wait operations are used to poll the event driver to handle any operations that have been scheduled for execution by the globus_callback system or I/O system. In this way, applications written to use those systems to handle nonblocking operations will work with either a threaded or nonthreaded runtime choice. </p>
<h2 class="groupheader">Function Documentation</h2>
<a class="anchor" id="ga1c074938c3f7c436bb6c3248a698533a"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int globus_cond_init </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="unionglobus__cond__t.html">globus_cond_t</a> *&#160;</td>
          <td class="paramname"><em>cond</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="unionglobus__condattr__t.html">globus_condattr_t</a> *&#160;</td>
          <td class="paramname"><em>attr</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Initialize a condition variableThe <a class="el" href="group__globus__cond.html#ga1c074938c3f7c436bb6c3248a698533a" title="Initialize a condition variableThe globus_cond_init() function creates a condition variable that can ...">globus_cond_init()</a> function creates a condition variable that can be used for event signalling between threads. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">cond</td><td>Pointer to the condition variable to initialize. </td></tr>
    <tr><td class="paramname">attr</td><td>Condition variable attributes.</td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>On success, <a class="el" href="group__globus__cond.html#ga1c074938c3f7c436bb6c3248a698533a" title="Initialize a condition variableThe globus_cond_init() function creates a condition variable that can ...">globus_cond_init()</a> initializes the condition variable and returns GLOBUS_SUCCESS. Otherwise, a non-0 value is returned. </dd></dl>

</div>
</div>
<a class="anchor" id="ga4eb0f26fc152d2c2ec956cfde24e4190"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int globus_cond_destroy </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="unionglobus__cond__t.html">globus_cond_t</a> *&#160;</td>
          <td class="paramname"><em>cond</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Destroy a condition variable. </p>
<pre class="fragment">The globus_cond_destroy() function destroys the condition variable
pointed to by its @a cond parameter. After a condition variable is
destroyed it may no longer be used
unless it is again initialized by globus_cond_init(). 
</pre><dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">cond</td><td>The condition variable to destroy. </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>On success, <a class="el" href="group__globus__cond.html#ga4eb0f26fc152d2c2ec956cfde24e4190" title="Destroy a condition variable.">globus_cond_destroy()</a> returns GLOBUS_SUCCESS. Otherwise, a non-zero implementation-specific error value is returned. </dd></dl>

</div>
</div>
<a class="anchor" id="ga9b58106e5b1b2545ab45db0e3e4f98b0"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int globus_cond_wait </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="unionglobus__cond__t.html">globus_cond_t</a> *&#160;</td>
          <td class="paramname"><em>cond</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="unionglobus__mutex__t.html">globus_mutex_t</a> *&#160;</td>
          <td class="paramname"><em>mutex</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Wait for a condition to be signalled. </p>
<pre class="fragment">The globus_cond_wait() function atomically unlocks the mutex pointed to
by the @a mutex parameter and blocks the current thread until the
condition variable pointed to by @a cond is signalled by either
globus_cond_signal() or globus_cond_broadcast(). Behavior is undefined
if globus_cond_wait() is called with the mutex pointed to by the @a
mutex variable unlocked.
</pre><dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">cond</td><td>The condition variable to wait for. </td></tr>
    <tr><td class="paramname">mutex</td><td>The mutex associated with the condition state.</td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>On success, <a class="el" href="group__globus__cond.html#ga9b58106e5b1b2545ab45db0e3e4f98b0" title="Wait for a condition to be signalled.">globus_cond_wait()</a> unlocks the mutex and blocks the current thread until it has been signalled, returning GLOBUS_SUCCES. Otherwise, <a class="el" href="group__globus__cond.html#ga9b58106e5b1b2545ab45db0e3e4f98b0" title="Wait for a condition to be signalled.">globus_cond_wait()</a> returns an implementation-specific non-zero error value. </dd></dl>

</div>
</div>
<a class="anchor" id="gaaeabb30d3449c1d693b02241f92fd6b5"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int globus_cond_timedwait </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="unionglobus__cond__t.html">globus_cond_t</a> *&#160;</td>
          <td class="paramname"><em>cond</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="unionglobus__mutex__t.html">globus_mutex_t</a> *&#160;</td>
          <td class="paramname"><em>mutex</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">globus_abstime_t *&#160;</td>
          <td class="paramname"><em>abstime</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Wait for a condition to be signalled. </p>
<pre class="fragment">The globus_cond_timedwait() function atomically unlocks the mutex
pointed to by the @a mutex parameter and blocks the current thread until
either the condition variable pointed to by @a cond is signalled by
another thread or the current time exceeds the value pointed to by the
@a abstime parameter. If the timeout occurs before the condition is
signalled, globus_cond_timedwait() returns ETIMEDOUT. Behavior is
undefined if globus_cond_timedwait() is called with the mutex pointed to
by the @a mutex variable unlocked.
</pre><dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">cond</td><td>The condition variable to wait for. </td></tr>
    <tr><td class="paramname">mutex</td><td>The mutex associated with the condition state. </td></tr>
    <tr><td class="paramname">abstime</td><td>The absolute time to wait until.</td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>On success, <a class="el" href="group__globus__cond.html#gaaeabb30d3449c1d693b02241f92fd6b5" title="Wait for a condition to be signalled.">globus_cond_timedwait()</a> unlocks the mutex and blocks the current thread until it has been signalled, returning GLOBUS_SUCCES. If a timeout occurs before signal, <a class="el" href="group__globus__cond.html#gaaeabb30d3449c1d693b02241f92fd6b5" title="Wait for a condition to be signalled.">globus_cond_timedwait()</a> unlocks the mutex and returns ETIMEDOUT. Otherwise, <a class="el" href="group__globus__cond.html#gaaeabb30d3449c1d693b02241f92fd6b5" title="Wait for a condition to be signalled.">globus_cond_timedwait()</a> returns an implementation-specific non-zero error value. </dd></dl>

</div>
</div>
<a class="anchor" id="ga05a56b1f671782a6a2c0d2c72292dd47"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int globus_cond_signal </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="unionglobus__cond__t.html">globus_cond_t</a> *&#160;</td>
          <td class="paramname"><em>cond</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Signal a condition to a thread. </p>
<pre class="fragment">The globus_cond_signal() function signals a condition as occurring.
This will unblock at least one thread waiting for that condition.
</pre><dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">cond</td><td>A pointer to the condition variable to signal. </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>Upon success, <a class="el" href="group__globus__cond.html#ga05a56b1f671782a6a2c0d2c72292dd47" title="Signal a condition to a thread.">globus_cond_signal()</a> returns GLOBUS_SUCCESS. If an error occurs, <a class="el" href="group__globus__cond.html#ga05a56b1f671782a6a2c0d2c72292dd47" title="Signal a condition to a thread.">globus_cond_signal()</a> returns an implementation-specific non-zero error code. </dd></dl>

</div>
</div>
<a class="anchor" id="ga380d237b678089096a9e23487b20393f"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int globus_cond_broadcast </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="unionglobus__cond__t.html">globus_cond_t</a> *&#160;</td>
          <td class="paramname"><em>cond</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Signal a condition to multiple threads. </p>
<pre class="fragment">The globus_cond_signal() function signals a condition as occurring.
This will unblock all threads waiting for that condition.
</pre><dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">cond</td><td>A pointer to the condition variable to signal. </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>Upon success, <a class="el" href="group__globus__cond.html#ga380d237b678089096a9e23487b20393f" title="Signal a condition to multiple threads.">globus_cond_broadcast()</a> returns GLOBUS_SUCCESS. If an error occurs, <a class="el" href="group__globus__cond.html#ga380d237b678089096a9e23487b20393f" title="Signal a condition to multiple threads.">globus_cond_broadcast()</a> returns an implementation-specific non-zero error code. </dd></dl>

</div>
</div>
<a class="anchor" id="ga2d3d2973d1d31d574ea3eb524bea0304"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int globus_condattr_init </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="unionglobus__condattr__t.html">globus_condattr_t</a> *&#160;</td>
          <td class="paramname"><em>cond_attr</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Initialize a condition variable attribute. </p>
<pre class="fragment">The globus_condattr_init() function initializes the condition variable
attribute structure pointed to by its @a cond_attr parameter to the
system default values.
</pre><dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">cond_attr</td><td>Attribute structure to initialize.</td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>Upon success, <a class="el" href="group__globus__cond.html#ga2d3d2973d1d31d574ea3eb524bea0304" title="Initialize a condition variable attribute.">globus_condattr_init()</a> returns GLOBUS_SUCCESS and modifies the attribute pointed to by <em>cond_attr</em>. If an error occurs, <a class="el" href="group__globus__cond.html#ga2d3d2973d1d31d574ea3eb524bea0304" title="Initialize a condition variable attribute.">globus_condattr_init()</a> returns an implementation-specific non-zero error code. </dd></dl>

</div>
</div>
<a class="anchor" id="ga0a0ed173728c392dc6778ec913c40c31"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int globus_condattr_destroy </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="unionglobus__condattr__t.html">globus_condattr_t</a> *&#160;</td>
          <td class="paramname"><em>cond_attr</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Destroy a condition attribute. </p>
<pre class="fragment">The globus_condattr_destroy() function destroys the condition variable
attribute structure pointed to by its @a cond_attr parameter. 
</pre><dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">cond_attr</td><td>Attribute structure to destroy.</td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>Upon success, <a class="el" href="group__globus__cond.html#ga0a0ed173728c392dc6778ec913c40c31" title="Destroy a condition attribute.">globus_condattr_destroy()</a> returns GLOBUS_SUCCESS and modifies the attribute pointed to by <em>cond_attr</em>. If an error occurs, <a class="el" href="group__globus__cond.html#ga0a0ed173728c392dc6778ec913c40c31" title="Destroy a condition attribute.">globus_condattr_destroy()</a> returns an implementation-specific non-zero error code. </dd></dl>

</div>
</div>
<a class="anchor" id="gacca6f5cb093ac7aed78c91416f85843f"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int globus_condattr_setspace </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="unionglobus__condattr__t.html">globus_condattr_t</a> *&#160;</td>
          <td class="paramname"><em>cond_attr</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&#160;</td>
          <td class="paramname"><em>space</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Set callback space associated with a condition variable attributeThe <a class="el" href="group__globus__cond.html#gacca6f5cb093ac7aed78c91416f85843f" title="Set callback space associated with a condition variable attributeThe globus_condattr_setspace() funct...">globus_condattr_setspace()</a> function sets the callback space to use with condition variables created with this attribute. </p>
<p>Callback spaces are used to control how callbacks are issued to different threads. See <a class="el" href="group__globus__callback__spaces.html">Callback Spaces </a> for more information on callback spaces.</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">cond_attr</td><td>Condition variable attribute to modify. </td></tr>
    <tr><td class="paramname">space</td><td>Callback space to associate with the attribute.</td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>On success, <a class="el" href="group__globus__cond.html#gacca6f5cb093ac7aed78c91416f85843f" title="Set callback space associated with a condition variable attributeThe globus_condattr_setspace() funct...">globus_condattr_setspace()</a> returns GLOBUS_SUCCESS and adds a reference to the callback space to the condition variable attribute. If an error occurs, <a class="el" href="group__globus__cond.html#gacca6f5cb093ac7aed78c91416f85843f" title="Set callback space associated with a condition variable attributeThe globus_condattr_setspace() funct...">globus_condattr_setspace()</a> returns an implementation-specific non-zero error code. </dd></dl>

</div>
</div>
<a class="anchor" id="gaacfdc80dc9721a8cd2f8ebe9b999f46a"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int globus_condattr_getspace </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="unionglobus__condattr__t.html">globus_condattr_t</a> *&#160;</td>
          <td class="paramname"><em>cond_attr</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int *&#160;</td>
          <td class="paramname"><em>space</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Get callback space associated with a condition variable attributeThe <a class="el" href="group__globus__cond.html#gaacfdc80dc9721a8cd2f8ebe9b999f46a" title="Get callback space associated with a condition variable attributeThe globus_condattr_getspace() funct...">globus_condattr_getspace()</a> function copies the value of the callback space associated with a condition variable attribute to the integer pointed to by the <em>space</em> parameter. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">cond_attr</td><td>Condition variable attribute to modify. </td></tr>
    <tr><td class="paramname">space</td><td>Pointer to an integer to be set to point to the callback space associated with cond_attr.</td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>On success, <a class="el" href="group__globus__cond.html#gaacfdc80dc9721a8cd2f8ebe9b999f46a" title="Get callback space associated with a condition variable attributeThe globus_condattr_getspace() funct...">globus_condattr_getspace()</a> returns GLOBUS_SUCCESS and modifies the value pointed to by <em>space</em> to refer to the callback space associated with <em>cond_attr</em>. If an error occurs, <a class="el" href="group__globus__cond.html#gaacfdc80dc9721a8cd2f8ebe9b999f46a" title="Get callback space associated with a condition variable attributeThe globus_condattr_getspace() funct...">globus_condattr_getspace()</a> returns an implementation-specific non-zero error code. </dd></dl>

</div>
</div>
</div><!-- contents -->
</div><!-- doc-content -->
<hr>
<p align="center">
<a href="http://www.globus.org/toolkit/about.html" target="_top">about globus</a> |
<a href="http://www.globus.org/toolkit/" target="_top">globus toolkit</a> |
<a href="https://dev.globus.org/wiki/Welcome/" target="_top">dev.globus</a>
<br>
<br>
Comments? <a href="mailto:webmaster@globus.org">webmaster@globus.org</a>
</body>
</html>