Java教程

java进阶之多线程五ThreaLocal、线程的等待和阻塞

本文主要是介绍java进阶之多线程五ThreaLocal、线程的等待和阻塞,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

ThreadLocal

ThreadLocal 类似于 hashMap
k值为当前线程名称
ThreadLocal.get() //获取值
ThreadLoacl.set() //设置值
当多次设置 值时 后面会替换前面的值
在这里插入图片描述
ThreadLoal 用来存储当前线程中的数据
因此不同线程的数据是隔离的 因此可以实现线程隔离

线程的生命周期

对象锁 object

当使用线程同步锁的时候
synchronisation 使用类作为锁时
obj.wait 等待 等待 obj.notify 唤醒

Lock 唤醒和等待

       ReentrantLock lock = new ReentrantLock();
        Condition condition = lock.newCondition();
        condition.signalAll(); //唤醒全部
        condition.await(); //等待
这篇关于java进阶之多线程五ThreaLocal、线程的等待和阻塞的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!