⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 suballoc.h

📁 htp是一个HTML预处理器。页面可以用htp扩展的类HTML的宏编写。这可以简化维护一个一致外观的Web页面集.
💻 H
字号:
/*//// suballoc.h//// Memory suballocation ... rather than go out to heap for all the memory,// htp maintains a small cache of recently allocated memory for speedier// requests//// Copyright (c) 1995-96 Jim Nelson.  Permission to distribute// granted by the author.  No warranties are made on the fitness of this// source code.//*/#ifndef SUBALLOC_H#define SUBALLOC_H/*// performance counters*/#if DEBUGextern uint totalAllocations;extern uint freePoolHits;#endif/*// suballoc has several features that can be controlled via #defines// most features are turned off for release versions of the software to// speed up execution//// These features are:////      SUBALLOC_WARNING        prints warning to stdout when problems are//                              detected////      SUBALLOC_CLEARMEM       all memory is cleared with a special bit//                              pattern (not all zero or all one) when//                              allocated and freed////      SUBALLOC_DEBLOG         will print all allocs and frees to a debug//                              log////      SUBALLOC_MINALLOCSIZE   size (in bytes) of minimum allocation ...//                              helps prevent heap thrashing when lots of//                              small allocations occur ... if set to 0//                              then allocation sizes match requested size////      SUBALLOC_FIRSTFIT       if set, suballoc pulls the first properly sized//                              block out of its free pool, rather than the//                              one with the best fit ... faster, but may lead//                              to unnecessary allocs from the system heap////      SUBALLOC_MAXFREEPOOLSIZE if set, suballoc will keep the free pool//                              size equal to or less than this amount//                              ... too small a size will lead to excessive//                              heap allocations, too large could cause the//                              program to keep vital memory from the operating//                              system//*/#define SUBALLOC_MINALLOCSIZE       (64)#define SUBALLOC_FIRSTFIT           (1)#if DEBUG#define SUBALLOC_WARNING            (1)#define SUBALLOC_CLEARMEM           (1)#define SUBALLOC_DEBLOG             (0)#else#define SUBALLOC_WARNING            (0)#define SUBALLOC_CLEARMEM           (0)#define SUBALLOC_DEBLOG             (0)#endif#if __MSDOS__#define SUBALLOC_MAXFREEPOOLSIZE    (60 * KBYTE)#else#define SUBALLOC_MAXFREEPOOLSIZE    (512 * KBYTE)#endif/*// Initialize and terminate functions ... should be called before and// after using following functions*/void InitializeMemory(void);void TerminateMemory(void);/*// AllocMemory//// malloc() look-alike*/void *_AllocMemory(uint size, const char *file, uint line);#define AllocMemory(size)       _AllocMemory(size, __FILE__, __LINE__)/*// FreeMemory//// free() look-alike*/void _FreeMemory(void *ptr, const char *file, uint line);#define FreeMemory(ptr)         _FreeMemory(ptr, __FILE__, __LINE__);/*// ResizeMemory//// realloc() look-alike*/void *_ResizeMemory(void *ptr, uint newSize, const char *file, uint line);#define ResizeMemory(ptr, newSize) \    _ResizeMemory(ptr, newSize, __FILE__, __LINE__)/*// MemorySize//// Returns available size of buffer*/uint MemorySize(void *ptr);#endif

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -