
线程与进程
文章平均质量分 66
weiyuan2011
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
进程同步
进程同步体现在两个方面:①直接制约关系:共享某个临界资源②间接制约关系:各进程、线程间按某个规定的顺序执行;同步机制遵循的准则:1)空闲让进2)忙则等待3)有限等待4)让权等待解决同步问题用到的两种机制:Ⅰ、信号量机制 P V操作1)解决互斥问题 mutex Mutex初值为1 进程A要访问临界资源必须先原创 2013-10-05 16:23:23 · 1242 阅读 · 0 评论 -
进程间通信
进程间通信 何为通信?就是进程间传播交换信息 ?进程通信的目的 答:1)数据的传输:A进程发送数据给B进程 2)共享数据 3)通知事件:A进程通知B进程某事件发生了 4)资源共享:多进程共享同一资源Ex:打印机 5)进程控制进程间通信的主要方法有:管道、共享内存、信号、信号量、套原创 2013-10-03 13:58:16 · 981 阅读 · 0 评论 -
内存池?进程池?线程池?
内存池平常我们使用new、malloc在堆区申请一块内存,但由于每次申请的内存大小不一样就会产生很多内存碎片,造成不好管理与浪费的情况内存池则是在真正使用内存之前,先申请分配一定数量的、大小相等(一般情况下)的内存块留作备用。当有新的内存需求时,就从内存池中分出一部分内存块,若内存块不够再继续申请新的内存。这样做的一个显著优点是尽量避免了内存碎片,使得内存分配效率得到提升。进程池&&线原创 2013-10-05 22:45:44 · 5086 阅读 · 2 评论 -
死锁的产生与处理
死锁 进程间通信已达到资源的共享,既然有限的资源供给多个进程,必然会造成资源的竞争,这种进程间由于竞争资源或者进程间推进顺序不当就会产生死锁。死锁产生的必要条件有四:1)互斥条件:所请求的资源是互斥的2)请求和保持:当A进程请求某资源即使失败也不会释放自己已拥有的资源3)不剥夺条件:A进程在其未执行结束前不得被其他进程剥夺资源4)环路等待条件:发生死锁时,必存在一个环路原创 2013-10-03 14:50:00 · 989 阅读 · 0 评论 -
核心态与用户态
究竟什么是用户态,什么是内核态,这两个基本概念以前一直理解得不是很清楚,根本原因个人觉得是在于因为大部分时候我们在写程序时关注的重点和着眼的角度放在了实现的功能和代码的逻辑性上,先看一个例子:1)例子C代码1. voidtestfork(){2. if(0==fork()){3. printf(“createnewprocesssucce转载 2013-10-05 21:23:44 · 1298 阅读 · 0 评论 -
多线程同步
我们来一起理一理什么是线程、线程与进程的区别、什么是多线程、线程同步又是什么、线程同步的方法 一、什么是线程?在多任务环境下,进程与进程间要不断进行切换,而进程是拥有资源与独立调度的基本单位,所以在晋城不断切换是其所拥有的资源会浪费处理剂时间、空间开销。为了减少处理机空转时间、切换时间与空间开销我们引入了“线程”,以提高CPU的利用率与并发性“线程”是处理机进行调度与处理的基本原创 2013-10-05 21:02:19 · 1204 阅读 · 0 评论 -
经典线程同步问题(一)
问题:子线程循环 10 次,接着主线程循环 100 次,接着又回到子线程循环 10 次,接着再回到主线程又循环 100 次,如此循环50次,试写出代码。 解答:这里我们讲题简化为 “子线程循环2次,接着主线程循环 4次,接着又回到子线程循环 2次,接着再回到主线程又循环 4 次,如此循环5次,试写出代码”HANDLE g_eventMain;HANDLE g_eventSon;原创 2014-02-07 09:56:52 · 820 阅读 · 0 评论 -
经典线程同步问题(二)
问题:编写一个程序,开启3个线程,这3个线程的ID分别为A、B、C,每个线程将自己的ID在屏幕上打印10遍,要求输出结果必须按ABC的顺序显示;如:ABCABC….依次递推。解答:在这里我们将题简化为循环打印5遍HANDLE g_eventA;HANDLE g_eventB;HANDLE g_eventC;unsigned int __stdcall threadFun原创 2014-02-07 11:08:55 · 789 阅读 · 0 评论 -
经典线程同步问题(三)
问题:有四个线程1、2、3、4。线程1的功能就是输出1,线程2的功能就是输出2,以此类推.........现在有四个文件ABCD。初始都为空。现要让四个文件呈如下格式:A:1 2 3 4 1 2....B:2 3 4 1 2 3....C:3 4 1 2 3 4....D:4 1 2 3 4 1....请设计程序。#include /*整体思想如下:关键段实现对原创 2014-02-08 12:06:45 · 889 阅读 · 0 评论