是从Redis
代码中移植过来的双端链表。
Api Guideline:
list *listCreate(void);
//创建链表void listRelease(list *list);
//释放链表list *listAddNodeHead(list *list, void *value);
//链表头部,插入节点list *listAddNodeTail(list *list, void *value);
//链表尾部,插入节点void listDelNode(list *list, listNode *node);
//链表,删除节点
从OneValue移植过来,可以根据实际需求来自定义MsgType
如果需要高性能的日志库,可以使用 spdlog
Usage Example:
#include "logger.h"
int main()
{
FileLogger fileLogger;
if (fileLogger.setFileName("log_test.txt"))
{
//default use stdout
Logger::log(Logger::Message, "Using the log file(%s) output", fileLogger.fileName());
//use log_test.txt
Logger::setDefaultLogger(&fileLogger);
Logger::log(Logger::Error, "Using!!!");
}
return 0;
}
从OneValue移植过来
Usage Example:
#include "locker.h"
int main()
{
Mutex log_mutex;
log_mutex.lock();
//do_something()
log_mutex.unlock();
}
用来解了解华为的软件挑战赛的题,然...
smart_ptr.cpp
locker.h
stress_client.cpp
16channel_rtsp.c
这个例子利用多线程做一个16路的分屏多路RTSP流播放,是在雷博士原本的单路代码上修改的。
效果图: