Table of Contents
This is part of Win16 API which allow to create versions of program from one source code to run under OS/2 and Win16. Under OS/2 program can be running under Win-OS/2 if program is Windows NE executable, and with help on Windows Libraries for OS/2, if it is OS/2 NE executable. Here is a WLO to OS/2 API mapping draft
LocalCompact
Brief
Compacts the local heap to satisfy a memory request and returns the size of the largest free block.
Syntax
UINT WINAPI LocalCompact( UINT uMinFree );
Parameters
uMinFree – Minimum amount of free space (in bytes) desired. Can be zero.
Return Value
Returns the maximum size of a free block that can be allocated after compaction.
Notes
Compaction may move unlocked discardable blocks or discard them entirely.
This function is rarely needed because Windows automatically manages the heap.
Example Code
C Binding
UINT maxFree = LocalCompact(1024);
MASM Binding
push 1024 call LocalCompact
See also
| Group | Functions |
|---|---|
| Module manager | GETVERSION GETMODULEHANDLE GETMODULEUSAGE GETMODULEFILENAME GETPROCADDRESS MAKEPROCINSTANCE FREEPROCINSTANCE GETINSTANCEDATA CATCH THROW GETCODEHANDLE LOADLIBRARY |
| Global Memory Manager | GlobalAlloc GlobalCompact GlobalDiscard GlobalFree GlobalLock GlobalReAlloc GlobalSize GlobalUnlock GlobalFlags |
| Local Memory Manager | LocalInit LocalAlloc LocalCompact LocalDiscard LocalFree LocalLock LocalFreeze LocalMelt LocalReAlloc LocalSize LocalUnlock LocalHandleDelta LockData UnlockData LocalFlags |
| Task Scheduler | GetCurrentTask Yield SetPriority |
| Resource Manager | AddFontResource RemoveFontResource LoadBitmap LoadCursor LoadIcon LoadMenu LoadString LoadAccelerators FindResource LoadResource AllocResource LockResource FreeResource AccessResource SizeofResource SetResourceHandler |
| String Translation | AnsiUpper AnsiLower AnsiNext AnsiPrev |
| Atom Manager | InitAtomTable AddAtom DeleteAtom FindAtom GetAtomName |
| Windows Initialization File | GetProfileInt GetProfileString WriteProfileString |
| Debugging | FatalExit |
| File I/O | _lopen _lcreat _llseek _lread _lwrite _lclose OpenFile GetTempFileName GetTempDrive |
| Registry | RegOpenKey RegCreateKey RegCloseKey RegDeleteKey RegSetValue RegQueryValue RegEnumKey |




