码迷,mamicode.com
首页 >  
搜索关键字:互斥    ( 2999个结果
操作系统 进程与线程 浅析
进程(process)和线程(thread)是操作系统的基本概念,但是它们比较抽象,不容易掌握。最近,我读到一篇材料,发现有一个很好的类比,可以把它们解释地清晰易懂。...
分类:编程语言   时间:2015-07-09 11:26:05    阅读次数:179
锁优化
【JVM锁优化:http://www.importnew.com/15340.html】【自旋锁】互斥同步对性能最大的影响是阻塞的实现,挂起线程和恢复线程的操作都需要转入内核态中完成,这些操作给系统的并发性能带来了很大的压力。而在很多应用上, 共享数据的锁定状态只会持续很短的一段时间。若实体机上有多...
分类:其他好文   时间:2015-07-09 00:34:17    阅读次数:120
多线程一个错误的例子
见源码:/********* 说明:********* 1.要让读者与写者之间、以及写者与写者之问要互斥地访同数据集;********* 2.在无写进程到来时各读者可同时访问数据集;********* 3.在读者和写者都等待时访问时写者优先.*********/#includ...
分类:编程语言   时间:2015-07-08 20:34:20    阅读次数:145
多线程互斥-读写者问题
互斥量(mutex)互斥锁创建有两种方法创建互斥锁,静态方式和动态方式。POSIX定义了一个宏PTHREAD_MUTEX_INITIALIZER 来静态初始化互斥锁,方法如下:pthread_mutex_t mutex=PTHREAD_MUTEX_INITIALIZER;在LinuxThreads实...
分类:编程语言   时间:2015-07-08 20:25:25    阅读次数:230
进程互斥
一 基本概念:1 临界资源(critical resource): 系统中的某些资源一次只允许一个进程使用。2 临界区(critical section): 各个进程中对某些临界资源进行操作的程序片段。3 临界区的使用原则:1) 无进程在临界区,进程可进入2) 不允许两个进程同时处于临界区3) .....
分类:系统相关   时间:2015-07-08 14:19:27    阅读次数:258
Java-ReentrantReadWriteLock的简单例子
内容:读锁时共享的,写锁时互斥的(可见运行结果),都是通过AQS实现的。 public class ReentrantReadWriteLockTest { static class MyObject { private Object object; private ReadWriteLock lock = new ReentrantReadWriteLock(); pu...
分类:编程语言   时间:2015-07-07 22:49:41    阅读次数:204
Linux IPC 同步(三):记录锁
进程间的互斥,我们可以让这些进程共享某个内存区(mmap实现),然后在该共享内存区中使用某种类型的同步变量但是,fcntl记录上锁往往更容易使用。#include #include int fcntl(int fd, int cmd, ... /* struct flock *arg */ );st...
分类:系统相关   时间:2015-07-07 12:27:55    阅读次数:137
J.U.C CAS
在JDK1.5之前,也就是J.U.C加入JDK之前,Java是依靠synchronized关键字(JVM底层提供)来维护协调对共享字段的访问,保证对这些变量的独占访问权,并且以后其他线程忽的该锁时,将可以看到对这些变量进行的更改(可见性,互斥性)。 锁机制的问题: 锁问题不可回避的,就是上下文...
分类:其他好文   时间:2015-07-06 19:39:49    阅读次数:88
linux程序设计——用信号量进行同步(第十二章)
12.5.2    用互斥量进行同步 另一种在多线程程序中的同步访问方法是使用互斥量.它允许程序员锁住某个对象,使得每次只能有一个线程访问它.为了控制对关键代码的访问,必须在进入这段代码之前锁住一个互斥量,然后在完成操作之后解锁它. 用于互斥量的基本函数和用于信号量的函数非常相似,它们的定义如下所示: #include int pthread_mutex_init(pthread_mute...
分类:系统相关   时间:2015-07-06 14:22:06    阅读次数:181
C#线程等待句柄
互斥对象 Mutexprivate Mutex m = new Mutex();public void Method(){ m.WaitOne(); //执行操作 m.ReleaseMutex(); }共享资源SemaphoreSemaphore是一个信号量,可以让多个资源分类型的同时进行。书中一个重要的有代表性的例子就是图书馆有多个电脑,有若干个人使用电脑的问题。是一个不错...
分类:编程语言   时间:2015-07-06 12:20:02    阅读次数:130
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!