
并发
程序员蛋蛋
专注Java技术干货分享,输出高质量原创JAVA系列文章,帮助程序员一起成长。回复 【资源】免费获取最有价值的资源,你懂的
展开
-
玩转线程池
多线程的异步执行方式,虽然能够最大限度发挥多核计算机的计算能力,但是如果不加控制,反而会对系统造成负担。线程本身也要占用内存空间,大量的线程会占用内存资源并且可能会导致Out of Memory。即便没有这样的情况,大量的线程回收也会给GC带来很大的压力。为了避免重复的创建线程,线程池的出现可以让线程进行复用。通俗点讲,当有工作来,就会向线程池拿一个线程,当工作完成后,并不是直接关闭线程,而是将这...原创 2019-11-11 09:24:39 · 191 阅读 · 0 评论 -
ThreadLocal源码分析
ThreadLocal类提供了线程局部 (thread-local) 变量。这些变量与普通变量不同,每个线程都可以通过其 get 或 set方法来访问自己的独立初始化的变量副本。ThreadLocal 实例是private static 类型,它们希望将状态与某一个线程(例如,用户 ID 或事务 ID)相关联。-------ThreadLocal类注释 首先看一下ThreadLocal的部...原创 2019-11-05 13:58:50 · 223 阅读 · 0 评论 -
线程封闭之ThreadLocal和栈封闭
线程封闭 当访问共享数据时,通常是要使用同步。如果要避免使用同步,就是不提供共享数据。如果仅在单线程中访问数据,就不需要同步,这种技术就叫做线程封闭,它是实现线程安全最简单的方式之一。当某个对象封闭在一个线程当中时将自动实现线程安全性,即使被封闭的对象本身它并不是安全的,实现线程主要有三种方式。...原创 2019-11-03 13:42:24 · 538 阅读 · 0 评论