JAVA并发编程>>并发级别

理解并发

这是我在开发者头条看到的。@编程原理林振华

有目标的提升自己会事半功倍,前行的道路并不孤独。

1、阻塞

当一个线程进入临界区(公共资源区)后,其他线程必须在临界区外等待,待进去的线程执行完成任务离开临界去后,其它线程才能进去。

2、无饥饿

线程排队先来后到,不管优先级大小,先来先执行,,就不会产生饥饿等待资源,也即公平锁;相反非公平锁则是根据优先级来执行,有可能排在前面的低优先级线程被后面的高优先级插队,形成饥饿。

3、无障碍

共享资源不加锁,每个线程都可以自由读写,当监测到被其他线程修改过,则回滚操作,重试直到单独操作成功;当多个线程同时读写,容易造成死循环。

4、无锁

无锁是无障碍的加强版,无锁级别保证至少有一个线程

5、无等待

猜你喜欢

转载自www.cnblogs.com/zhujj1314/p/10699268.html