$UnPost: Difference between revisions
mNo edit summary |
m (add italics) |
||
(2 intermediate revisions by 2 users not shown) | |||
Line 2: | Line 2: | ||
==Syntax== | ==Syntax== | ||
<p class=" | <p class="syntax">$UnPost(<span class="term">ECB-number</span>) | ||
</p> | </p> | ||
<p> | <p> | ||
Where:</p> | Where:</p> | ||
<p>ECB-number is a numeric value from one to the NECBS parameter that identifies the ECB to be unposted. The ECB | <p> | ||
<var class="term">ECB-number</var> is a numeric value from one to the <var>NECBS</var> parameter that identifies the ECB to be unposted. The ECB number can be expressed as a numeric literal, a literal enclosed in quotation marks, a %variable, or a field name.</p> | |||
==Usage== | ==Usage== | ||
Line 13: | Line 14: | ||
<p>Use the <var>$Post</var>, <var>$UnPost</var>, and <var>$Wait</var> functions to coordinate processing between threads for numbered ECBs. For the extended quiesce ECB, QZSIG, only the <var>$Wait</var> and <var>$Post</var> functions are valid.</p> | <p>Use the <var>$Post</var>, <var>$UnPost</var>, and <var>$Wait</var> functions to coordinate processing between threads for numbered ECBs. For the extended quiesce ECB, QZSIG, only the <var>$Wait</var> and <var>$Post</var> functions are valid.</p> | ||
<p> | <p> | ||
<var>$UnPost</var> does not reset the contents of the post code or string data set by the <var>$Post</var> or <var>$ | <var>$UnPost</var> does not reset the contents of the post code or string data set by the <var>$Post</var> or <var>$EcbDSet</var> functions for the specified ECB.</p> | ||
<p class="note"><b>Note:</b> Even in a non-multiprocessing environment, the <var>$UnPost</var> function should be used with extreme care. Unposting an ECB while users are waiting on it may keep users in a wait state forever or until the next <var>$Post</var> function is issued.</p> | <p class="note"><b>Note:</b> Even in a non-multiprocessing environment, the <var>$UnPost</var> function should be used with extreme care. Unposting an ECB while users are waiting on it may keep users in a wait state forever or until the next <var>$Post</var> function is issued.</p> | ||
<p> | <p> | ||
Line 24: | Line 25: | ||
<tr> | <tr> | ||
<td | <td>0 </td> | ||
<td>Success</td> | <td>Success</td> | ||
</tr> | </tr> | ||
<tr> | <tr> | ||
<td | <td>2 </td> | ||
<td>Bad argument specified</td> | <td>Bad argument specified</td> | ||
</tr> | </tr> | ||
<tr> | <tr> | ||
<td | <td>3</td> | ||
<td>NECBS parameter is not specified or is zero</td> | <td>NECBS parameter is not specified or is zero</td> | ||
</tr> | </tr> | ||
<tr> | <tr> | ||
<td | <td>4 </td> | ||
<td>The first argument is less than one or greater than the NECBS parameter</td> | <td>The first argument is less than one or greater than the NECBS parameter</td> | ||
</tr> | </tr> | ||
Line 49: | Line 50: | ||
<tr> | <tr> | ||
<td | <td>8 </td> | ||
<td>No argument specified</td> | <td>No argument specified</td> | ||
</tr> | </tr> | ||
<tr> | <tr> | ||
<td | <td>12</td> | ||
<td>Invalid argument CPQZ or invalid argument following QZSIG</td> | <td>Invalid argument CPQZ or invalid argument following QZSIG</td> | ||
</tr> | </tr> | ||
</table> | </table> | ||
==See also== | |||
The ECB-related $functions are: | |||
<ul> | |||
<li><var>[[$EcbDGet]]</var> | |||
<li><var>[[$EcbDSet]]</var> | |||
<li><var>[[$EcbTest|$EcbTest]]</var> | |||
<li><var>[[$Post]]</var> | |||
<li><var>[[$UnPost]]</var> | |||
<li><var>[[$Wait]]</var> | |||
</ul> | |||
[[Category:SOUL $functions]] | [[Category:SOUL $functions]] |
Latest revision as of 17:28, 2 January 2018
$UnPost resets a specified Event Control Block (ECB) to an unposted state, meaning that the event has not yet occurred or has not recurred. Resets the post code to zero.
Syntax
$UnPost(ECB-number)
Where:
ECB-number is a numeric value from one to the NECBS parameter that identifies the ECB to be unposted. The ECB number can be expressed as a numeric literal, a literal enclosed in quotation marks, a %variable, or a field name.
Usage
Use the $UnPost function to unpost a specified, numbered ECB. An ECB must be unposted before another post or wait on this ECB takes place. The $Post and $Wait functions do not unpost an ECB, so that a subsequent wait on the same ECB cannot take place, because the ECB is still posted from the previous posting.
Use the $Post, $UnPost, and $Wait functions to coordinate processing between threads for numbered ECBs. For the extended quiesce ECB, QZSIG, only the $Wait and $Post functions are valid.
$UnPost does not reset the contents of the post code or string data set by the $Post or $EcbDSet functions for the specified ECB.
Note: Even in a non-multiprocessing environment, the $UnPost function should be used with extreme care. Unposting an ECB while users are waiting on it may keep users in a wait state forever or until the next $Post function is issued.
The following return codes apply to the $UnPost function:
Return code | Meaning |
---|---|
0 | Success |
2 | Bad argument specified |
3 | NECBS parameter is not specified or is zero |
4 | The first argument is less than one or greater than the NECBS parameter |
5 | NUSERS = 1 |
8 | No argument specified |
12 | Invalid argument CPQZ or invalid argument following QZSIG |
See also
The ECB-related $functions are: