本文主要是介绍实现线程封闭的方式,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
Ad-hoc 线程封闭:完全由程序控制实现,最糟糕的方式,忽略
堆栈封闭:局部变量,无并发问题。当多个线程访问同一个方法的时候,方法内的局部变量都会被拷贝一份副本到线程的栈中,所以局部变量是不会被多个线程所共享的,因此无并发问题。所以我们在开发时应尽量使用局部变量而不是全局变量
ThreadLocal 线程封闭:特别好的封闭方法,每个Thread线程内部都有个map,这个map是以线程本地对象作为key,以线程的变量副本作为value。而这个map是由ThreadLocal来维护的,由ThreadLocal负责向map里设置线程的变量值,以及获取值。所以对于不同的线程,每次获取副本值的时候,其他线程都不能获取当前线程的副本值,于是就形成了副本的隔离,多个线程互不干扰。所以这是特别好的实现线程封闭的方式
这篇关于实现线程封闭的方式的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!