Java 线程状态

线程状态:new  新生    start  准备就绪     运行状态    阻塞状态(sleep, wait,同步锁)     死亡状态

 线程停止:1.标志位停止;2.自动停止,利用次数

线程休眠:模拟延时。每个对象都有一把锁,sleep不会释放锁。Thread.sleep();

线程礼让:Thread.yield()

线程合并:Thread.join()  插队

观测线程状态:Thread.state()  new  runable waiting dead

线程优先级:priority  1-10  执行顺序并不一定按优先级跑

守护线程:Thread.setDaemon(true);用户线程终止,守护线程也会终止。

线程同步:并发:同一对象被多个线程同时操作。线程同步是一种排队等待机制,对象等待池形成队列。

     队列 和  锁 保证同步

     synchronized 同步锁 this   同步块   synchronized(obj){   } obj  增删改查的对象

    每个线程都有自己的工作内存。

             JUC 线程安全类型:CopyonWriteArrayList

死锁:同步锁

             Lock锁:显示锁 是JUC包里的 Reentrantlock lock= new Reentrantlock();   lock.lock  .....lock.unlock;

线程之间的通信:通过全局变量:管程法 和  标志位  

FutrueTask     ExecutorServices   Executors    CopyonWriteArrayList    wait() notifyall()

    

原文地址:https://www.cnblogs.com/chencn/p/12234061.html