
thread & process
jackytse_
不以物喜 . 不以己悲
展开
-
进程和线程的区别与联系
进程(process)是指在系统中正在运行的一个应用程序,是系统资源分配的基本单位,在内存中有其完备的数据空间和代码空间,拥有完整的虚拟空间地址。一个进程所拥有的数据和变量只属于它自己。线程(thread)是进程内相对独立的可执行单元,所以也被称为轻量进程(lightweight processes);是操作系统进行任务调度的基本单元。它与父进程的其它线程共享该进程所拥有的全部代码空间和全局变转载 2012-02-25 20:15:38 · 10929 阅读 · 3 评论 -
InterLockedIncrement and InterLockedDecrement
InterLockedIncrement and InterLockedDecrement实现数的原子性加减。什么是原子性的加减呢?举个例子:如果一个变量 Long value =0;首先说一下正常情况下的加减操作:value+=1;1:系统从Value的空间取出值,并动态生成一个空间来存储取出来的值;2:将取出来的值和1作加法,并且将和放回Value的空间覆盖掉原值。加法结束转载 2012-08-21 13:15:53 · 1288 阅读 · 0 评论 -
深入GetMessage,PeekMessage以及Windows消息机制
主题: 深入GetMessage和PeekMessage译者的话该文重点讲述了Windows处理事件、消息的具体过程和步骤。尤其是在系系处理鼠标键盘事件的过程上做了详解。通过这篇文章,你将对Windows的消息处理机制有一个较全面的了解。概念这篇文章解释了GetMessage和PeekMessage的内部运作方式,同时也是一类与“消息及消息在16位 MS-DOS®/Microsof转载 2012-05-13 02:37:43 · 7000 阅读 · 0 评论 -
linux互斥锁和条件变量的关系
互斥锁一个明显的缺点是它只有两种状态:锁定和非锁定。而条件变量通过允许线程阻塞和等待另一个线程发送信号的方法弥补了互斥锁的不足,它常和互斥锁一起配合使用。使用时,条件变量被用来阻塞一个线程,当条件不满足时,线程往往解开相应的互斥锁并等待条件发生变化。一旦其他的某个线程改变了条件变量,他将通知相应的条件变量唤醒一个或多个正被此条件变量阻塞的线程。这些线程将重新锁定互斥锁并重新测试条件是否满足。一般说来,条件变量被用来进转载 2017-02-26 02:18:44 · 1767 阅读 · 0 评论