提交 bcd00f40 编写于 作者: Y yuqing

fast_mblock suport alloc and free object

上级 8ace700d
Version 1.15 2015-06-15
* fast_mblock.c support none lock
* ioevent support set timeout
* fast_mblock suport alloc and free object
Version 1.14 2015-06-12
* fast_task_info support set_buffer_size and realloc_buffer
* use file lock when write logger header
......@@ -6,8 +11,6 @@ Version 1.14 2015-06-12
* macro FDFS_WRITE_BUFF_SIZE change to FAST_WRITE_BUFF_SIZE
* logger.c call log_check_rotate in lock
* bug fixed: log header correctly when rotate
* fast_mblock.c support none lock
* ioevent support set timeout
Version 1.13 2015-02-27
* support php extension
......
Name: libfastcommon
Version: 1.0.14
Version: 1.0.15
Release: 1%{?dist}
Summary: c common functions library extracted from my open source projects FastDFS
License: GPL
......
......@@ -88,11 +88,41 @@ free a node (put a node to the mblock)
parameters:
mblock: the mblock pointer
pNode: the node to free
return the alloced node, return NULL if fail
return 0 for success, return none zero if fail
*/
int fast_mblock_free(struct fast_mblock_man *mblock, \
int fast_mblock_free(struct fast_mblock_man *mblock,
struct fast_mblock_node *pNode);
/**
alloc a object from the mblock
parameters:
mblock: the mblock pointer
return the alloced object, return NULL if fail
*/
static inline void *fast_mblock_alloc_object(struct fast_mblock_man *mblock)
{
struct fast_mblock_node *node;
node = fast_mblock_alloc(mblock);
if (node == NULL)
{
return NULL;
}
return node->data;
}
/**
free a object (put the object to the mblock)
parameters:
mblock: the mblock pointer
object: the object to free
return 0 for success, return none zero if fail
*/
static inline int fast_mblock_free_object(struct fast_mblock_man *mblock,
void *object)
{
return fast_mblock_free(mblock, fast_mblock_to_node_ptr(object));
}
/**
get node count of the mblock
parameters:
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册