Memory Management Routines

These API routines allow you to manipulate and allocate memory for your API functions.

_Alloca( ) API Library Routine

Allocates a block of stack space for the calling routine. Memory is automatically freed when the routine exits.

_AllocHand( ) API Library Routine

Returns a new MHANDLE of size hsize. A value of zero is returned when there is insufficient memory to fulfill the request. Memory allocated with _AllocHand( ) isn't initialized.

_FreeHand( ) API Library Routine

Releases an MHANDLE previously allocated by means such as _AllocHand( ).

_GetHandSize( ) API Library Routine

Returns the usable number of bytes associated with an MHANDLE.

_HandToPtr( ) API Library Routine

Translates an MHANDLE to a FAR (32-bit) pointer, which points to the memory allocated to this MHANDLE.

_HLock( ) API Library Routine

Locks an MHANDLE to prevent it from moving if Visual FoxPro requires memory reorganization.

_HUnLock( ) API Library Routine

Unlocks an MHANDLE, allowing it to participate in Visual FoxPro memory reorganization.

_MemAvail( ) API Library Routine

Returns True if a request to allocate a handle of size bytes will succeed. Otherwise, _MemAvail( ) returns False.

_MemCmp( ) API Library Routine

Compares two length byte memory areas.

_MemFill( ) API Library Routine

Fills an area of memory starting at the location pointed to by ptr with length copies of the byte in character.

_MemMove( ) API Library Routine

Copies length bytes from src to dest.

_SetHandSize( ) API Library Routine

Changes the amount of memory allocated to an MHANDLE. The routine returns True if the reallocation is successful or False if the reallocation fails.

Community Additions