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

ThreadLocal

ThreadLocal 类似于 hashMap
k值为当前线程名称
ThreadLocal.get() //获取值
ThreadLoacl.set() //设置值
当多次设置 值时 后面会替换前面的值
java进阶之多线程五ThreaLocal、线程的等待和阻塞
ThreadLoal 用来存储当前线程中的数据
因此不同线程的数据是隔离的 因此可以实现线程隔离

线程的生命周期

对象锁 object

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

Lock 唤醒和等待

       ReentrantLock lock = new ReentrantLock();
        Condition condition = lock.newCondition();
        condition.signalAll(); //唤醒全部
        condition.await(); //等待
上一篇:SpringBoot自动装配-Condition


下一篇:一个经典的多线程condition使用实例代码,请评论