1#!F-adobe-helvetica-medium-r-normal--18* 2#!N 3#!CNavyBlue #!N #!Rstoral Memory Allocation #!N 4#!EC #!N #!N Data Explorer recognizes two kinds of memory--local and 5global. Stack variables and memory allocated by #!F-adobe-times-bold-r-normal--18* DXAllocateLocal() #!EF are 6local to the processor. Memory allocated by #!F-adobe-times-bold-r-normal--18* DXAllocate() #!EF (including 7all Objects) is global and may or may not reside in 8the processor. (On some platforms, such as those without per-processor local 9memory, there is no distinction between global and local.) #!N #!N 10Data Explorer's memory-allocation routines, which provide hooks for debugging, also distinguish 11between local and global allocation. These, rather than the standard system 12memory-allocation routines (such as #!F-adobe-times-bold-r-normal--18* malloc() #!EF ), are recommended, to 13ensure consistent management of memory. #!N #!I0 #!N #!N #!I0 #!N 14 #!F-adobe-times-bold-r-normal--18* #!F-adobe-times-bold-r-normal--18* Pointer DXAllocate() #!EF #!N Pointer DXAllocateZero(); #!EF #!I50 #!N 15Allocate global memory. See #!Ldxalp,dxall1171 h DXAllocate, DXAllocateZero, DXAllocateLocal, DXAllocateLocalZero, DXAllocateLocalOnly, DXAllocateLocalOnlyZero #!EL . #!N #!I0 #!N #!F-adobe-times-bold-r-normal--18* #!F-adobe-times-bold-r-normal--18* 16Pointer DXAllocateLocal() #!EF #!N Pointer DXAllocateLocalZero(); #!EF #!I50 #!N Allocate local 17memory if available; otherwise, global memory. See #!Ldxalp,dxall1171 h DXAllocate, DXAllocateZero, DXAllocateLocal, DXAllocateLocalZero, DXAllocateLocalOnly, DXAllocateLocalOnlyZero #!EL . #!N #!I0 18#!N #!F-adobe-times-bold-r-normal--18* #!F-adobe-times-bold-r-normal--18* Pointer DXAllocateLocalOnly() #!EF #!N Pointer DXAllocateLocalOnlyZero(); #!EF #!I50 19#!N Allocate local memory. See #!Ldxalp,dxall1171 h DXAllocate, DXAllocateZero, DXAllocateLocal, DXAllocateLocalZero, DXAllocateLocalOnly, DXAllocateLocalOnlyZero #!EL . #!N #!I0 #!N #!F-adobe-times-bold-r-normal--18* 20 #!F-adobe-times-bold-r-normal--18* Pointer DXReAllocate() #!EF #!EF #!I50 #!N Changes the size of 21a previously allocated block of memory. See #!Ldxrea,dxall1352 h DXReAllocate #!EL . #!N #!I0 22#!N #!F-adobe-times-bold-r-normal--18* #!F-adobe-times-bold-r-normal--18* Error DXFree() #!EF #!EF #!I50 #!N Frees a 23previously allocated block of memory. See #!Ldxfre,dxall1212 h DXFree #!EL . #!I0 #!N #!N 24#!N #!N #!F-adobe-times-bold-r-normal--18* LESS COMMONLY USED ROUTINES #!EF __________________________________ #!N #!I0 25#!N #!N #!I0 #!N #!F-adobe-times-bold-r-normal--18* #!F-adobe-times-bold-r-normal--18* void DXPrintAlloc() #!EF #!EF #!I50 26#!N Prints out a summary of memory use. See #!Ldxpa,dxall1332 h DXPrintAlloc #!EL . 27#!I0 #!N #!N #!N #!N #!N #!F-adobe-times-medium-i-normal--18* Next Topic #!EF #!N 28#!N #!Lobjsec,dxall1097 h Object Class #!EL #!N #!F-adobe-times-medium-i-normal--18* #!N 29