libfastcommon - C基础库


LGPL
Linux
C/C++

软件简介

libfastcommon是一款开源的C基础库,她是从FastDFS项目中剥离出来的C基础库。这个库非常简单、高效和稳定,提供的函数主要包括如下几类:

string:字符串处理;

logger:日志记录,支持日志轮转、日志压缩等特性;

ini file reader:ini配置文件解析,支持include、标注和简单逻辑处理如#@if 和 #@for;

id generator:64位ID生成器,本地生成可做到全局唯一;

hash:hashtable封装;

avl tree:平衡二叉树;

socket op:网络IO处理;

ioevent:epoll封装,支持 Linux, FreeBSD 和 SunOS;

io buffer management: 网络IO buffer管理;

fast timer:时间轮,通常用于高效处理网络超时;

skiplist:跳表;

mblock & object pool:内存池和对象池;

base64 encode / decode:base64编解码,+和/这两个字符可以自定义;

url encode / decode::URL编解码

local ip functions:获取本机IPv4地址;

system info functions:可以获取系统信息,包括CPU数量、内存大小、系统负载(load)、进程信息等等;

process control:基于进程号(pid)文件的进程控制,包括:start、stop和restart;

task schedule:定时任务处理,支持动态添加定时任务;

char convert:快速字符转换。

更多函数信息,请参阅源码中的C头文件。

对于部分函数,如 id generator、 local ip、system
info等,提供了PHP封装,支持PHP5和PHP7。php扩展在子目录php-fastcommon下。