- 博客(8)
- 资源 (1)
- 收藏
- 关注
原创 内存池
#include#includeusing namespace std;#define USHORT int#define ULONG long#define MEMPOOL_ALIGNMENT 4struct CMemBlock{public:int nSize;int nfree;USHORT nfirst;CMemBl
2012-06-29 10:54:25 568
转载 摘自别人的,主要学习与线程编程相关的函数
线程池:简单地说,线程池 就是预先创建好一批线程,方便、快速地处理收到的业务。比起传统的到来一个任务,即时创建一个线程来处理,节省了线程的创建和回收的开销,响应更快,效率更高。 在linux中,使用的是posix线程库,首先介绍几个常用的函数:1 线程的创建和取消函数pthread_create创建线程pthread_join合并线程pthread_cancel
2012-06-27 13:49:54 392
原创 线程池 C++实现
//线程工作类与任务接通#include#include#includeusing namespace std;//互斥类class CThreadMutex{friend class CCondition;public:CThreadMutex(){pthread_mutex_init(&m_pthreadMutex, NU
2012-06-27 12:55:14 474
原创 iterator循环的时候不能有删除操作erase()
iterator循环的时候不能有删除操作,在循环中先查找,然后在循环外面删。 void CThreadPool::MoveToBusyList(CWorkerThread* idlethread){ m_IdleMutex.Lock(); m_BusyMutex.Lock(); m_BusyList.push_back(idlethread);
2012-06-26 15:26:47 625
原创 boost线程 创建
#include#include#include #includeusing namespace std;class CThread{private: unsigned long m_ThreadID; int m_ThreadState; //the state of the thread
2012-06-21 14:58:43 489
原创 两个类互相定义为成员变量 C++
class A;//提前声明A类class B{ A* a;//必须为A类的指针}; class A{ B b;};这样定义即可。 gcc中,在引用某个已经实现的类时:如果只是定义某个类的指针,可以使用class关键字先进行声明,而不需包含头文件;但如果涉及到定义某个类的对象或是引用类的某个具体成员时,则必须包含
2012-06-21 12:20:52 3419 1
原创 contain_of 浅析
关于container_of见kernel.h中:/*** container_of - cast a member of a structure out to the containing structure* @ptr: the pointer to the member.* @type: the type of the container struct thi
2012-06-18 14:38:02 4481
转载 libnet libcap 安装
对于这几个文件包:执行次序是:先安装m4, 其次是bison 再次是flex 接着是libpcap 最后是tcpdumplibpcap是unix/linux平台下的网络数据包捕获函数包。ubuntu 下需要的安装包:m4-**-.tar.gz (版本自己选择 ftp.gnu.org/gnu/m4/ 下载) 如果没有编译安装此文件,在编译安装bison时,就会出现 “config
2012-06-12 14:24:07 3733
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人