![](https://img-blog.csdnimg.cn/20201014180756738.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
并发
看山跑不死马
这个作者很懒,什么都没留下…
展开
-
双重检查锁定和延迟初始化
双重检查锁定的由来在多线程程序中,有时候需要采用延迟初始化来降低初始化类和创建对象的开销。首先提给出延迟出事化对象的示例代码:public class UnsafeLazyInitialization{ private static Instance newInstance; public static Instance getInstance(){ ...原创 2019-01-07 20:53:51 · 157 阅读 · 0 评论 -
线程状态
java线程运行中可能处于以下六种状态:NEW : 初始状态,线程被构建,但是还没有调用start()方法。RUNNABLE : 运行状态,JAVA线程将操作系统中的就绪和运行两种状态笼统的称作“运行中”。BLOCKED : 阻塞状态,表示线程阻塞于锁。WAITING : 等待状态,表示线程进入等待状态,进入该状态表示当前线程需要等待其他线程做出一些特定动作(通知或中断)。TIME-W...转载 2019-01-08 23:39:23 · 116 阅读 · 0 评论 -
java的中断
中断可以理解为线程的标识位属性,它表示一个线程是否被其他线程执行了中断操作。线程通过方法isInterrupted()来判断线程是否被中断,也可以调用Thread.interrupted()对当前线程的中断标识位进行复位。如果该线程处于终结状态,即使它被中断过,在调用该线程对象的isInterrupted()方法依然会返回false。而且java的API中许多声明可以抛出InterruptedEx...转载 2019-01-09 00:02:00 · 358 阅读 · 0 评论