![]() Chapter Contents |
![]() Previous |
![]() Next |
| hpcreate |
| SYNOPSIS | |
| DESCRIPTION | |
| RETURN VALUE | |
| DIAGNOSTICS | |
| IMPLEMENTATION | |
| EXAMPLE | |
| RELATED FUNCTIONS | |
| SEE ALSO |
| SYNOPSIS |
#include <multheap.h>
_heap_id hpcreate(_heap_attr _ _near *ha,
char _ _near *name);
| DESCRIPTION |
hpcreate creates a new
heap based on attributes from the structure pointed to by ha. name can either be NULL
or point to a unique null-terminated string (truncated to 16 bytes) that will
name the heap for diagnostic purposes.
| RETURN VALUE |
hpcreate returns the ID
of the newly created heap. This ID is used to specify the heap to be used
by other multi-heap functions.
| DIAGNOSTICS |
If the heap attribute structure pointed to by ha is invalid, NULL is returned. Possible reasons for rejecting
a heap attribute structure include the following: the version number was
invalid (possibly indicating an uninitialized structure), a subpool other
than 131 was specified for a shared heap, or the name was associated with
another heap. NULL may also be returned if hpcreate
was unable to allocate memory for control information.
| IMPLEMENTATION |
Only control information is allocated during hpcreate. Heap storage will not be allocated from the heap
until hpalloc, hpcalloc,
or another multiheap storage function is invoked.
| EXAMPLE |
#include <stdlib.h>
#include <stdio.h>
#include <string.h>
#include <multheap.h>
_heap_attr attr;
main()
{
_heap_id id1;
// create a user heap - shared and above
// the bar
hpattr(&attr);
attr.flags = HPATTR_SHARED;
attr.amode = HPLOC_64;
attr.subpool = HPSUBPOOL_DEFAULT;
attr.initial = 1000000000;
attr.overflow = 0;
id1 = hpcreate(&attr, "Above The Bar1");
if (!id1)
{
WTP("error in hpcreate.\n");
return -1;
}
WTP("id1 = %04hX\n", id1);
}
| RELATED FUNCTIONS |
hpalloc, hpcalloc,
hppoolcreate
| SEE ALSO |
"Memory Allocation Functions" in Chapter 2, "Function Categories" of the SAS/C Library Reference, Volume 1.
![]() Chapter Contents |
![]() Previous |
![]() Next |
![]() Top of Page |
Copyright © 2004 by SAS Institute Inc., Cary, NC, USA. All rights reserved.