socket() 本地的进程间通信(IPC)有很多种方式,但可以总结为下面4类: 消息传递(管道、FIFO、消息队列) 同步(互斥量、条件变量、读写锁、文件和写记录锁、信号量) 共享内存(匿名的和具名的) 远程过程调用(Solaris门和Sun RPC) 不过这个不是重点!提问,在网络中进程之间如何...
分类:
其他好文 时间:
2015-12-17 00:31:02
阅读次数:
179
FreeRTOS提供了几个内存堆管理方案,有复杂的也有简单的。其中最简单的管理策略也能满足很多应用的要求,比如对安全要求高的应用,这些应用根本不允许动态内存分配的。 FreeRTOS也允许你自己实现内存堆管理,甚至允许你同时使用两种内存堆管理方案。同时实现两种内存堆允许任务堆栈和其它RTOS对象放置到快速的内部RAM,应用数据放置到低速的外部RAM。 每当创建任务、队列、互斥量...
分类:
其他好文 时间:
2015-12-10 19:36:55
阅读次数:
472
1. 基本概念一个Unix进程可以理解为一个线程加上地址空间、文件描述符和其他数据。异步表明事情相互独立发生, 除非有强加的依赖性。并发指实际可能是穿行发生的事情好像同时发生一样。并行指并发序列同时执行。线程安全是指代码能够被多个线程调用而不会产生灾难性后果。2. 共享数据——同步对象——互斥量——...
分类:
其他好文 时间:
2015-12-09 11:23:51
阅读次数:
113
跨平台的原子性操作,适合C开发人员借鉴.采用编译器提供的原子性操作和操作系统提供的中断函数,实现原子锁. 性能很好,比互斥量开销小一半多.
分类:
其他好文 时间:
2015-12-06 21:06:49
阅读次数:
317
这里的进程锁与线程锁、互斥量、读写锁和自旋锁不同,它是通过记录一个PID文件,避免两个进程同时运行的文件锁。进程锁的作用之一就是可以协调进程的运行,例如crontab使用进程锁解决冲突提到,使用crontab限定每一分钟执行一个任务,但这个进程运行时间可能超过一分钟,如果不用进程锁解决冲突的话两个进...
分类:
系统相关 时间:
2015-11-20 17:32:50
阅读次数:
177
管程(monitor)说明在并发编程中,管程(monitor)是一个同步构件,管程实现了同一时间点,最多只有一个线程可以执行管程的某个子程序。与那些通过修改数据结构实现互斥访问的并发程序设计相比,管程的实现很大程度上简化了程序设计。管程可以确保一次只有一个进程执行管程中的程序,因此程序员不需要显式地...
分类:
编程语言 时间:
2015-10-13 15:19:53
阅读次数:
335
[TOC] 1. QT 线程的创建 Qthread MovetoThread MovetoThread需要重新connect A:Qthread B:MovetoThread C:-->?MovetoThread需要重新connect 2. QT 线程同步 互斥量 QMutex 读写锁 QReadW...
分类:
编程语言 时间:
2015-10-07 06:15:34
阅读次数:
243
针对一个经典的线程同步互斥问题,前面几篇文章提出了四种解决方案:关键段、事件、互斥量、信号量。下面对这四种解决方案做一个总结,梳理一下知识点:首先来看下关于线程同步互斥的概念性的知识,相信大家通过前面的文章,已经对线程同步互斥有一定的认识了,也能模糊的说出线程同步互斥的各种概念性知识,下面再列出从《...
分类:
编程语言 时间:
2015-10-05 21:59:53
阅读次数:
274
互斥量也是一个内核对象,它用来确保一个线程独占一个资源的访问。互斥量与关键段的行为非常相似,并且互斥量可以用于不同进程中的线程互斥访问资源。使用互斥量Mutex主要将用到四个函数。下面是这些函数的原型和使用说明。第一个 CreateMutex函数功能:创建互斥量(注意与事件Event的创建函数对比)...
分类:
编程语言 时间:
2015-10-05 01:53:51
阅读次数:
314
原文地址:http://blog.itpub.net/10697500/viewspace-612045/Linux中 四种进程或线程同步互斥的控制方法1、临界区:通过对多线程的串行化来访问公共资源或一段代码,速度快,适合控制数据访问。2、互斥量:为协调共同对一个共享资源的单独访问而设计的。3、信号...
分类:
系统相关 时间:
2015-10-03 19:21:53
阅读次数:
402