- 博客(4)
- 收藏
- 关注
转载 ConcurrentHashMap的原理
大家都知道HashMap是非线程安全的,Hashtable是线程安全的,但是由于Hashtable是采用synchronized进行同步,相当于所有线程进行读写时都去竞争一把锁,导致效率非常低下。 同步Map:效率同样低下,对HashMap的每个操作都进行了同步处理 Map map = Collections.synchronizedMap(new HashMap()); 这样会
2016-12-14 19:14:11 257
转载 java中的锁
Java中的锁 在Java5.0之前采用的锁机制是用synchronized。Java5.0增加了新的机制:ReentrantLock。与synchronized内置加锁不同,ReentrantLock是一种显示锁。 一、内置锁synchronized Synchronized的作用主要有三个:(1)确保线程互斥的访问同步代码(2)保证共享变量的修改能够及时可见(3)有效解决重排
2016-12-13 10:59:44 378
原创 sleep, yield, wait的区别
1.sleep(long millis) Thread的静态方法,使当前线程(即调用Thread.sleep(long millis)的线程)暂停执行一段时间(暂时让出CPU),让其他线程(任何优先级)有机会继续执行,但它并不释放对象锁。当睡眠到指定的时间后,时间事件触发,当前线程继续执行。源代码如下: 方法需要抛出InterruptedException异常。 如果sleep方法包
2016-12-12 17:41:36 358
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人