摘要: <cstddef> 定义宏NULL和offsetof,以及其他标准类型size_t和ptrdiff_t。与对应的标准C头文件的区别是,NULL是C++空指针常量的补充定义,宏offsetof接受结构或者联合类型参数,只要他们没有成员指针类型的非静态成员即可。 阅读全文
posted @ 2011-10-04 16:28 YOYO&# 阅读(333) 评论(0) 推荐(1) 编辑
摘要: FreeBSD, NetBSD, GNU/Linux, Mac OS X and Solaris等系统为符合Posix规范的系统而 DR-DOS and Microsoft Windows等系统不符合Posix规范,但可以通过一些扩展包实现Posix规范(其中windows提供的扩展包是在系统调用中直接扩展,而并非映射)pthread.h这个头文件包含了POSIX定义的一些系统调用(开头的P表示 POSIX),包括Thread management - creating, joining threads etcMutexesCondition variablesSynchronize betw 阅读全文
posted @ 2011-10-04 16:15 YOYO&# 阅读(312) 评论(0) 推荐(0) 编辑
摘要: 转自feisky http://www.cnblogs.com/feisky/archive/2010/03/08/1680950.html与互斥锁不同,条件变量是用来等待而不是用来上锁的。条件变量用来自动阻塞一个线程,直到某特殊情况发生为止。通常条件变量和互斥锁同时使用。条件变量使我们可以睡眠等待某种条件出现。条件变量是利用线程间共享的全局变量进行同步的一种机制,主要包括两个动作:一个线程等待"条件变量的条件成立"而挂起;另一个线程使"条件成立"(给出条件成立信号)。条件的检测是在互斥锁的保护下进行的。如果一个条件为假,一个线程自动阻塞,并释放等待状态 阅读全文
posted @ 2011-10-04 15:57 YOYO&# 阅读(90) 评论(0) 推荐(0) 编辑