ibm-information-center/dist/eclipse/plugins/i5OS.ic.apis_5.4.0.1/CEECRHP.htm

336 lines
9.3 KiB
HTML

<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<meta name="Copyright" content="Copyright (c) 2006 by IBM Corporation">
<title>Create Heap (CEECRHP) API</title>
<!-- Begin Header Records ========================================== -->
<!-- All rights reserved. Licensed Materials Property of IBM -->
<!-- US Government Users Restricted Rights -->
<!-- Use, duplication or disclosure restricted by -->
<!-- GSA ADP Schedule Contract with IBM Corp. -->
<!-- Change History: -->
<!-- YYMMDD USERID Change description -->
<!-- ILE8A SCRIPT A converted by B2H R4.1 (346) (CMS) by NLJONES at -->
<!-- RCHVMX on 25 Feb 1999 at 15:15:15 -->
<!-- Edited by Kersten Oct 2001 -->
<!-- End Header Records -->
<link rel="stylesheet" type="text/css" href="../rzahg/ic.css">
</head>
<body>
<!--Java sync-link-->
<script type="text/javascript" language="Javascript" src="../rzahg/synch.js">
</script>
<a name="Top_Of_Page"></a>
<h2>Create Heap (CEECRHP) API</h2>
<div class="box" style="width: 60%;">
<br>
&nbsp;&nbsp;Required Parameter:<br>
<!-- iddvc RMBR -->
<br>
<table width="100%">
<tr>
<td align="center" valign="top" width="10%">1</td>
<td align="left" valign="top" width="30%">heap_id</td>
<td align="left" valign="top" width="30%">Output</td>
<td align="left" valign="top" width="30%">INT4</td>
</tr>
</table>
<br>
&nbsp;&nbsp;Omissible Parameter Group:<br>
<!-- iddvc RMBR -->
<br>
<table width="100%">
<tr>
<td align="center" valign="top" width="10%">2</td>
<td align="left" valign="top" width="30%">initial_size</td>
<td align="left" valign="top" width="30%">Input</td>
<td align="left" valign="top" width="30%">INT4</td>
</tr>
<tr>
<td align="center" valign="top">3</td>
<td align="left" valign="top">increment</td>
<td align="left" valign="top">Input</td>
<td align="left" valign="top">INT4</td>
</tr>
<tr>
<td align="center" valign="top">4</td>
<td align="left" valign="top">alloc_strat_id</td>
<td align="left" valign="top">Input</td>
<td align="left" valign="top">INT4</td>
</tr>
<tr>
<td align="center" valign="top">5</td>
<td align="left" valign="top">fc</td>
<td align="left" valign="top">Output</td>
<td align="left" valign="top">FEEDBACK</td>
</tr>
</table>
<br>
&nbsp;&nbsp;Service Program Name: QLEAWI<br>
<!-- iddvc RMBR -->
<br>
&nbsp;&nbsp;Default Public Authority: *USE<br>
<!-- iddvc RMBR -->
<br>
&nbsp;&nbsp;Threadsafe: Yes<br>
<!-- iddvc RMBR -->
<br>
</div>
<p>The Create Heap (CEECRHP) API creates a new heap.</p>
<!-- Please NOTE: DO NOT DELETE THIS SECTION if this API has no authorities and locks. -->
<!-- Instead, use the commented out coding below to indicate NONE. -->
<h3>Authorities and Locks</h3>
<!-- Use this if there are no authorities and locks. -->
<p>None.</p>
<br>
<h3>Required Parameter</h3>
<dl>
<dt><strong>heap_id (output)</strong></dt>
<dd>The heap identifier of the created heap.</dd>
</dl>
<br>
<h3>Omissible Parameter Group</h3>
<dl>
<dt><strong>initial_size (input)</strong></dt>
<dd>The initial amount of storage, in bytes, allocated for the new heap. If
this parameter is 0 or omitted, and there is no corresponding value in the
user-defined allocation strategy, the system computes a default value. The
minimum value that can be specified is 512 bytes. If values between 1 and 512
bytes are specified, the system rounds the value up to 512 bytes automatically.
The maximum value that can be specified is 16MB minus 1KB. The value specified
is rounded up to a 512-byte boundary.
<p><strong>Note:</strong> If system resources are constrained, the system may
override the value specified.</p>
</dd>
<dt><strong>increment (input)</strong></dt>
<dd>The number of bytes by which the heap is extended when it is necessary to
enlarge the heap to satisfy an allocation request. If this parameter is 0 or
omitted, and there is no corresponding value in the user-defined allocation
strategy, the system computes a default value. The minimum value that can be
specified is 512 bytes. If values between 1 and 512 bytes are specified, the
system rounds the value up to 512 bytes automatically. The maximum value that
can be specified is 16MB minus 1KB. The value specified is rounded up to a
512-byte boundary.
<p><strong>Note:</strong> If system resources are constrained, the system may
override the value specified.</p>
</dd>
<dt><strong>alloc_strat_ID (input)</strong></dt>
<dd>The allocation strategy used. ILE allows allocation strategy values of 0,
1, and 40 through 44 from the possible range of values 0 through 99, where:
<table cellpadding="5">
<!-- cols="15 85" -->
<tr>
<td align="left" valign="top"><em>0</em></td>
<td align="left" valign="top">Specifies use of an allocation strategy that is
the optimal default for the system.</td>
</tr>
<tr>
<td align="left" valign="top"><em>1</em></td>
<td align="left" valign="top">Same as 0.</td>
</tr>
<tr>
<td align="left" valign="top" nowrap><em>40-44</em></td>
<td align="left" valign="top">User-defined allocation strategies. See <a href=
"CEE4DAS.htm">Define Heap Allocation Strategy (CEE4DAS) API</a> for information
on defining allocation strategies.</td>
</tr>
</table>
<p>For allocation strategy values outside of the values specified above:</p>
<table cellpadding="5">
<!-- cols="15 85" -->
<tr>
<td align="left" valign="top"><em>2-39</em></td>
<td align="left" valign="top">The values are reserved for other systems. If
they are specified, message CEE0814 is issued.</td>
</tr>
<tr>
<td align="left" valign="top"><em>45-49</em></td>
<td align="left" valign="top">The values are reserved for other systems. If
they are specified, message CEE0815 is issued.</td>
</tr>
<tr>
<td align="left" valign="top" nowrap><em>50-99</em></td>
<td align="left" valign="top">The values are not supported by ILE. If they are
specified, message CEE0806 is issued.</td>
</tr>
</table>
<br>
</dd>
<dt><strong>fc (output)</strong></dt>
<dd>A 12-byte feedback code.</dd>
</dl>
<br>
<h3>Feedback Codes and Conditions</h3>
<p>Severities of 10 or less represent success. For higher severities, no heap
is created, and all other output values are undefined.</p>
<table cellpadding="3">
<!-- cols="15 85" -->
<tr>
<td align="left" valign="top">CEE0000</td>
<td align="left" valign="top">The API completed successfully</td>
</tr>
<tr>
<td align="left" valign="top">Severity: 00</td>
<td align="left" valign="top">&nbsp;</td>
</tr>
<tr>
<td align="left" valign="top">CEE0804</td>
<td align="left" valign="top">The initial_size parameter is not valid</td>
</tr>
<tr>
<td align="left" valign="top">Severity: 30</td>
<td align="left" valign="top">&nbsp;</td>
</tr>
<tr>
<td align="left" valign="top">CEE0805</td>
<td align="left" valign="top">The increment parameter is not valid</td>
</tr>
<tr>
<td align="left" valign="top">Severity: 30</td>
<td align="left" valign="top">&nbsp;</td>
</tr>
<tr>
<td align="left" valign="top">CEE0806</td>
<td align="left" valign="top">Allocation strategy identifier value is not
valid</td>
</tr>
<tr>
<td align="left" valign="top">Severity: 30</td>
<td align="left" valign="top">&nbsp;</td>
</tr>
<tr>
<td align="left" valign="top">CEE0809</td>
<td align="left" valign="top">The maximum number of heaps supported by ILE has
been reached</td>
</tr>
<tr>
<td align="left" valign="top">Severity: 30</td>
<td align="left" valign="top">&nbsp;</td>
</tr>
<tr>
<td align="left" valign="top">CEE0813</td>
<td align="left" valign="top">Insufficient storage available to satisfy the
request</td>
</tr>
<tr>
<td align="left" valign="top">Severity: 30</td>
<td align="left" valign="top">&nbsp;</td>
</tr>
<tr>
<td align="left" valign="top">CEE0814</td>
<td align="left" valign="top">Allocation strategy identifier is not supported
by ILE</td>
</tr>
<tr>
<td align="left" valign="top">Severity: 30</td>
<td align="left" valign="top">&nbsp;</td>
</tr>
<tr>
<td align="left" valign="top">CEE0815</td>
<td align="left" valign="top">Allocation strategy identifier is not supported
by ILE</td>
</tr>
<tr>
<td align="left" valign="top">Severity: 30</td>
<td align="left" valign="top">&nbsp;</td>
</tr>
<tr>
<td align="left" valign="top">CEE3006</td>
<td align="left" valign="top">At least one field in the allocation strategy is
not valid</td>
</tr>
<tr>
<td align="left" valign="top">Severity: 30</td>
<td align="left" valign="top">&nbsp;</td>
</tr>
</table>
<br>
<h3>Usage Notes</h3>
<ul>
<li>If a user-defined allocation strategy value is specified for which the
CEE4DAS API was not called, the default user-created heap strategy is used. See
<a href="CEE4ALC.htm#HDRDEFHP">User-Defined Allocation Strategy</a>.</li>
<li>The <em>initial_size</em> and <em>increment</em> values, if specified, will
override any default or user-created heap strategy values.</li>
<li>If one of the fields in the allocation strategy CEE4DAS is not valid, the
heap is not created and an error condition is raised. This API checks the
allocation strategy.</li>
</ul>
<hr>
API introduced: V2R3
<hr>
<center>
<table cellpadding="2" cellspacing="2">
<tr align="center">
<td valign="middle" align="center"><a href="#Top_Of_Page">Top</a> | <a href=
"ile1a1.htm">ILE CEE APIs</a> | <a href="aplist.htm">APIs by category</a></td>
</tr>
</table>
</center>
</body>
</html>