发布时间:2014-08-05 20:20:06
Event是windows和Linux下都可以使用的内核对象我们知道如果只是为了让某个共享资源一次只让一个线程使用,则通过Critical Section与Mutex则可使资源使用达到互斥的目的.其中Critical Section是用户对象,Mutex是内核对象.除了此区别外,两者基本上差不多.但是使用上面两种互斥方式时,虽然能保证一次只一个线程访问某个.........【阅读全文】
发布时间:2014-08-05 08:12:13
可以先调用OpenMutex方法,查看互斥量创建没有,如果创建了就会返回共有的句柄了,如果没创建,那你调用CreateMutex来创建 你现在Mutex在谁手里,只有owner能够Release 多个进程不同时刻是可以支配同一个mutex的。这里的关键是锁的所有者owner要说清楚:所有者不一定是创建者CreateMutex,而是加锁的.........【阅读全文】
发布时间:2014-08-05 08:07:24
#include <pthread.h>#include <stdio.h>#include <stdlib.h>#include <sys/mman.h>#include <unistd.h>#include <sys/types.h>#include <sys/wait.h>typedef struct _FOO{ int nCount; int nData;}FOO,*PFOO;int main(int argc,char *argv[]){ FOO *ptr; pid_t pi.........【阅读全文】
发布时间:2014-08-04 20:43:14
一、MD(d)、MT(d)编译选项的区别1、编译选项的位置以VS2005为例,这样子打开:1) 打开项目的Property Pages对话框2) 点击左侧C/C++节3) 点击.........【阅读全文】
发布时间:2014-08-04 20:31:06
一 线程1)如果你正在编写C/C++代码,决不应该调用CreateThread。相反,应该使用VisualC++运行期库函数_beginthreadex,退出也应该使用_endthreadex。如果不使用Microsoft的VisualC++编译器,你的编译器供应商有它自己的CreateThred替代函数。不管这个替代函数是什么,你都必须使用。2)因为_beginthreadex和_en.........【阅读全文】