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

📄 dmalloc_tab.h

📁 减少内存碎片的malloc分配函数
💻 H
字号:
/* * Local defines for the memory table. * * Copyright 2000 by Gray Watson * * This file is part of the dmalloc package. * * Permission to use, copy, modify, and distribute this software for * any purpose and without fee is hereby granted, provided that the * above copyright notice and this permission notice appear in all * copies, and that the name of Gray Watson not be used in advertising * or publicity pertaining to distribution of the document or software * without specific, written prior permission. * * Gray Watson makes no representations about the suitability of the * software described herein for any purpose.  It is provided "as is" * without express or implied warranty. * * The author may be contacted via http://dmalloc.com/ * * $Id: dmalloc_tab.h,v 1.5 2003/06/08 05:53:45 gray Exp $ */#ifndef __DMALLOC_TAB_H__#define __DMALLOC_TAB_H__/* entry in a memory table */typedef struct mem_table_st {  const char		*mt_file;		/* filename of alloc or ra */  unsigned int		mt_line;		/* line number of alloc */  unsigned long		mt_total_size;		/* size bytes alloced */  unsigned long		mt_total_c;		/* total pointers allocated */  unsigned long		mt_in_use_size;		/* size currently alloced */  unsigned long		mt_in_use_c;		/* pointers currently in use */  /* we use this so we can easily un-sort the list */  struct mem_table_st	*mt_entry_pos_p;	/* pos of entry in table */} mem_table_t;/*<<<<<<<<<<  The below prototypes are auto-generated by fillproto *//* * void _dmalloc_table_clear * * DESCRIPTION: * * Clear out the allocation information in our table.  We are going to * be loading it with other info. * * RETURNS: * * None. * * ARGUMENTS: * * mem_table -> Memory table we are working on. * * entry_n -> Number of entries in the memory table. * * entry_cp <-> Pointer to an integer which records how many entries * are in the table. */externvoid	_dmalloc_table_clear(mem_table_t *mem_table, const int entry_n,			     int *entry_cp);/* * void _dmalloc_table_insert * * DESCRIPTION: * * Insert a pointer to the table. * * RETURNS: * * None. * * ARGUMENTS: * * mem_table -> Memory table we are working on. * * entry_n -> Number of entries in the memory table. * * file -> File name or return address of the allocation. * * line -> Line number of the allocation. * * size -> Size in bytes of the allocation. * * entry_cp <-> Pointer to an integer which records how many entries * are in the table. */externvoid	_dmalloc_table_insert(mem_table_t *mem_table, const int entry_n,			      const char *file, const unsigned int line,			      const unsigned long size, int *entry_cp);/* * void _dmalloc_table_delete * * DESCRIPTION: * * Remove a pointer from the table. * * RETURNS: * * None. * * ARGUMENTS: * * mem_table -> Memory table we are working on. * * entry_n -> Number of entries in the memory table. * * old_file -> File name or return address of the allocation to * delete. * * old_line -> Line number of the allocation to delete. * * size -> Size in bytes of the allocation. */externvoid	_dmalloc_table_delete(mem_table_t *mem_table, const int entry_n,			      const char *old_file,			      const unsigned int old_line,			      const DMALLOC_SIZE size);/* * void _dmalloc_table_log_info * * DESCRIPTION: * * Log information from the memory table to the log file. * * RETURNS: * * None. * * ARGUMENTS: * * mem_table -> Memory table we are working on. * * current_n -> Number of current entries in the memory table. * * entry_n -> Number of total possible entries in the memory table. * * log_n -> Number of entries to log to the file.  Set to 0 to * display all entries in the table. * * in_use_column_b -> Display the in-use numbers in a column. */externvoid	_dmalloc_table_log_info(mem_table_t *mem_table, const int current_n,				const int entry_n, const int log_n,				const int in_use_column_b);/*<<<<<<<<<<   This is end of the auto-generated output from fillproto. */#endif /* ! __DMALLOC_TAB_H__ */

⌨️ 快捷键说明

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