Texas Instruments TI89 Developer Guide - Page 897
HeapUnlock, HeapMoveHigh, HeapAllocHigh, move on the next heap compression.
![]() |
UPC - 033317198566
View all Texas Instruments TI89 manuals
Add to My Manuals
Save this manual to your list of manuals |
Page 897 highlights
Appendix A: System Routines - Memory Management 855 HeapLock Declaration: void HeapLock (HANDLE handle) Category(ies): Memory Management Description: Lock the block of heap memory associated with handle so that it will not move on the next heap compression. Inputs: handle - Handle created with a heap allocation routine like HeapAlloc or HeapAllocThrow. Outputs: None Assumptions: Memory allocated with HeapAllocHigh and HeapAllocHighThrow is locked to begin with. Side Effects: Locking memory may cause the system to run out of useable memory sooner than if memory is kept unlocked. Availability: All versions of the TI-89 / TI-92 Plus. TI-89 / TI-92 Plus Differences: None See Also: HeapUnlock, HeapGetLock, HeapMoveHigh, HeapAllocHigh Example: HANDLE hBlock; BYTE *pBlock; if (hBlock = HeapAlloc(100)) { HeapLock( hBlock ); pBlock = HeapDeref( hBlock ); /* pBlock may now be used even if the heap is compressed */ DlgMessage( "HeapLock", "pBlock points to locked memory" ); /* can still use pBlock here */ HeapUnlock( hBlock ); DlgMessage( "HeapUnlock", "pBlock may now be invalid" ); /* Cannot use pBlock here as the memory it points to may have moved */ pBlock = HeapDeref( hBlock ); /* Redereferenced hBlock so now pBlock is useable until next heap compression. */ HeapFree( hBlock ); } TI-89 / TI-92 Plus Developer Guide Not for Distribution Beta Version January 26, 2001
![](/manual_guide/products/texas-instruments-ti89-developer-guide-95b636f/897.png)