码迷,mamicode.com
首页 >  
搜索关键字:加锁    ( 2232个结果
ReentrantReadWriteLock 可重入的读写锁
可重入:就是同一个线程可以重复加锁,可以对同一个锁加多次,每次释放的时候会释放一次锁,直到该线程加锁次数为0,这个线程才释放锁。 读写锁: 也就是读锁可以共享,多个线程可以同时拥有读锁,但是写锁却只能只有一个线程拥有,而且获取写锁的时候,其他线程都已经释放了读锁,而且在该线程获取写锁之后,其他线程不 ...
分类:其他好文   时间:2016-04-27 12:32:51    阅读次数:125
java并发之ThreadLocal
ThreadLocal为每个使用该变量的线程提供独立的变量副本,即每个线程内部都会有一个该变量,且在线程内部任何地方都可以使用,线程之间互不影响,这样一来就不存在线程安全问题,也不会严重影响程序执行性能。所以每一个线程都可以独立地改变自己的副本,而不会影响其它线程所对应的副本。     对比同步机制与ThreadLocal,可以得出同步通过加锁的方式实现了线程数据共享,也就是以时间换空间,而Th...
分类:编程语言   时间:2016-04-26 21:54:52    阅读次数:206
读者写者模型
编写多线程时有些共享的数据需要修改的机会少而读的机会多,在读的过程中消耗的时间较长,因在读的时候先要查找,因此加入读写锁对代码的访问较快,还很好的对代码块进行了加锁。读写锁实际是基于自旋锁的(当线程访问某资源条件不满足时,不挂起该线程,而是让它一直重复rwloc..
分类:其他好文   时间:2016-04-25 22:55:48    阅读次数:567
多线程编程之信号量
一.信号量(semaphore)mutex变量是非0即1的,可看作一种资源的可用数量,初始化时mutex是1,表示有一个可用资源,加锁时获得该资源,将mutex减到0,表示不再有可用资源,解锁时释放该资源,将mutex重新加到1,表示又有了一个可用资源。semaphore和mutex类似,表示可用资源的数量..
分类:编程语言   时间:2016-04-25 01:10:58    阅读次数:333
读写锁
读写锁与互斥量类似,不过读写锁允许更高的并行性。互斥量要么是锁住状态,要么就是不加锁状态,而且一次只有一个线程可以对其加锁。读写锁可以有三种状态:读模式下加锁状态,写模式下加锁状态,不加锁状态。一次只有一个线程可以占有写模式的读写锁,但是锁哥线程可以同时占..
分类:其他好文   时间:2016-04-25 01:09:51    阅读次数:253
读者写者问题
为什么会有自旋锁在编写多线程的时候,有些公共数据读的概率远远大于修改的几率。通常而言,在读的过程中,往往伴随着查找的操作,中间耗时很长。给这种代码段加锁,会极大地降低我们程序的效率。我们引入了读写锁即自旋锁处理这种多读少写的情况。2.什么是自旋锁(1)它把对共..
分类:其他好文   时间:2016-04-25 01:06:38    阅读次数:250
android之handler机制深入解析
一、android中需要另开线程处理耗时、网络的任务,但是有必须要在UI线程中修改组件。这样做是为了: ①只能在UI线程中修改组件,避免了多线程造成组件显示混乱 ②不使用加锁策略是为了提高性能,因为android中经常使用多线程。 handler就是为了解决在多个线程之间的通信问题。 二、基本使用: ...
分类:移动开发   时间:2016-04-23 22:51:53    阅读次数:199
Android开发笔记(八十八)同步与加锁
同步synchronized 同步方法 synchronized可用来给方法或者代码块加锁,当它修饰一个方法或者一个代码块的时候,同一时刻最多只有一个线程执行这段代码。这就意味着,当两个并发线程同时访问synchronized代码块时,两个线程只能是排队做串行处理,另一个线程要等待前一个线程执行完该代码块后,才能再次执行synchronized代码块。 使用synchronized修...
分类:移动开发   时间:2016-04-22 20:57:16    阅读次数:283
JDK容器与并发—Map—ConcurrentHashMap
概述       线程安全的HashMap版本。 1)基本思想:将整个大的hash table进一步细分成小的hash table,即Segment; 2)读不用加锁;写操作在所在的Segmenet上加锁,而不是整个HashMap,Hashtable就是所有方法竞争Hashtable上的锁,导致并发效率低; 3)采用懒构造segment(除了segments[0]),以减少初始化内存。...
分类:其他好文   时间:2016-04-22 20:17:14    阅读次数:126
Linux 锁定关键的系统文件
锁定关键的系统文件可以增加系统的安全性,使用chattr命令来锁定,下面是几个需要锁定的文件:chattr+i/etc/passwd用户文件chattr+i/etc/shadow用户密码文件chattr+i/etc/group用户组文件chattr+i/etc/gshadow主密码文件chattr+i/etc/inittab开机启动的重要文件示例:加锁:[ro..
分类:系统相关   时间:2016-04-22 16:56:52    阅读次数:259
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!