原理分析:互斥对象是系统内核对象,各个线程都可以拥有它,谁拥有它谁就可以执行执行完毕,用ReleaseMutex 函数释放拥有权,以让其他等待的线程可以使用其他线程可以使用 WaitForSingleObject函数排队等待(等待也可以理解为排队申请) 使用过程var hMutex: T...
分类:
编程语言 时间:
2015-05-11 10:32:08
阅读次数:
160
原作者:chexlong原文地址:http://blog.csdn.net/chexlong/article/details/7051193本文目的:用C++和Windows的互斥对象(Mutex)来实现线程同步锁。 准备知识:1,内核对象互斥体(Mutex)的工作机理,WaitForSingleO...
分类:
编程语言 时间:
2015-05-06 19:36:54
阅读次数:
224
事件对象是指在程序中使用内核对象的有无信号状态实现线程的同步。
1.使用API函数操作事件对象
API函数为CreateEvent;
函数原型为:
HANDLE CreateEvent( LPSECURITY_ATTRIBUTES lpEventAttributes, // SD
BOOL bManualReset, // reset ty...
分类:
编程语言 时间:
2015-04-26 09:22:48
阅读次数:
166
线程的handle用处:
线程的handle是指向“线程的内核对象”的,而不是指向线程本身.每个内核对象只是内核分配的一个内存块,并且只能由内核访问。该内存块是一种数据结构,它的成员负责维护对象的各种信息(eg: 安全性描述,引用计数等)。
CloseHandle()
在CreateThread成功之后会返回一个hThread的handle,且内核对象的计数加1,Cl...
分类:
其他好文 时间:
2015-04-23 17:41:58
阅读次数:
142
上一篇介绍了通过lock关键字和Monitor类型进行线程同步,本篇中就介绍一下通过同步句柄进行线程同步。在Windows系统中,可以使用内核对象进行线程同步,内核对象由系统创建并维护。内核对象为内核所拥有,所以不同进程可以访问同一个内核对象, 如进程、线程、事件、信号量、互斥量等都是内核对象。其中...
分类:
编程语言 时间:
2015-04-17 13:45:00
阅读次数:
259
epoll极简介绍
epoll_create 创建一个epoll内核对象,返回指向该对象的fd
epoll_ctl 往epoll中添加、删除、修改需要监控的套接字
epoll_wait 等待epoll中的套接字产生可读、可写、异常消息...
分类:
其他好文 时间:
2015-04-09 23:55:44
阅读次数:
361
之前早就听说这本书不错,如果想对c++进一步的了解可以看看,此书是进阶阶段参考,笔者自己看了书的第一、三、四章节,后面会继续。 第一章讲了c++的对象模型的引入,各种模型的对比和现在c++采用的模型,比如简单对象模型、表格驱动对象模型、C++采用的是针对简单又参考表格驱动既存对象又虚函数存...
分类:
编程语言 时间:
2015-04-05 23:24:33
阅读次数:
172
线程的handle用处:
线程的handle是指向“线程的内核对象”的,而不是指向线程本身.每个内核对象只是内核分配的一个内存块,并且只能由内核访问。该内存块是一种数据结构,它的成员负责维护对象的各种信息(eg: 安全性描述,引用计数等)。
CloseHandle()
在CreateThread成功之后会返回一个hThread的handle,且内核对象的计数加1,CloseHandle...
分类:
其他好文 时间:
2015-04-02 16:33:02
阅读次数:
156
一、内核标志flag 在内核对象控制块中有一个标志成员flag(rt_uint8_t flag; ),这个标志在不同有内核对象中具有不同的含义。rt-thread的内核对象有定时器、线程、信号量、互斥锁、事件、邮箱、消息队列、内存堆、设备、模块,这些内核对象都继承了内核对象的成员,其中也就包含了内....
分类:
其他好文 时间:
2015-03-18 19:56:40
阅读次数:
301
进程1的数据有时需要发送给进程B,这可以通过内存映射实现。
主要用到的函数:
1.首先在一个进程里用CreateFileMapping创建一个新的文件映射内核对象。
HANDLE CreateFileMapping(
HANDLE hFile, //物理文件句柄,一般将它设...
分类:
系统相关 时间:
2015-03-17 21:52:29
阅读次数:
161