$UnPost: Difference between revisions

From m204wiki
Jump to navigation Jump to search
mNo edit summary
mNo edit summary
Line 1: Line 1:
<b>Function</b>
<var>$UnPost</var> 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.
<p>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.</p>
 
<b>Syntax</b>
==Syntax==
<p class="code">$UnPost(ECB-number)
<p class="code">$UnPost(ECB-number)
</p>
</p>
<p>Where:</p>
<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-number can be expressed as a numeric literal, a literal enclosed in quotation marks, a %variable, or a field name.</p>
<p>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.</p>
<b>Usage</b>
 
<p>Use the <var>$UnPost</var> function to unpost a specified, numbered ECB. An ECB must be unposted before another post or wait on this ECB takes place. The <var>$Post</var> and <var>$Wait</var> 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. </p>
==Usage==
<p>Use the <var>$Post</var>, <var>$UnPost</var>, 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.</p>
<p>
Use the <var>$UnPost</var> function to unpost a specified, numbered ECB. An ECB must be unposted before another post or wait on this ECB takes place. The <var>$Post</var> and <var>$Wait</var> 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. </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 $ECBDSET functions for the specified ECB.</p>
<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 19: Line 22:
<th>Meaning</th>
<th>Meaning</th>
</tr>
</tr>
<tr>
<tr>
<td align="right">0 </td>
<td align="right">0 </td>
<td>Success</td>
<td>Success</td>
</tr>
</tr>
<tr>
<tr>
<td align="right">2 </td>
<td align="right">2 </td>
<td>Bad argument specified</td>
<td>Bad argument specified</td>
</tr>
</tr>
<tr>
<tr>
<td align="right">3</td>
<td align="right">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 align="right">4 </td>
<td align="right">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>
<tr>
<tr>
<td align="right">5 </td>
<td align="right">5 </td>
<td>NUSERS = 1</td>
<td>NUSERS = 1</td>
</tr>
</tr>
<tr>
<tr>
<td align="right">8 </td>
<td align="right">8 </td>
<td>No argument specified</td>
<td>No argument specified</td>
</tr>
</tr>
<tr>
<tr>
<td align="right">12</td>
<td align="right">12</td>

Revision as of 19:51, 8 September 2014

$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