随笔分类 -  并发编程

摘要:在多线程下访问共享变量可以通过synchronized、volatile以及lock保证线程线程安全,那么当变量线程私有应该如何操作,答案是用ThreadLocal。 一、定义 ThreadLocal主要用于多线程情况下做线程隔离。 比如玩NDF,当多个玩家同时刷一个图时,每个人都是进自己的,不同的 阅读全文
posted @ 2021-03-16 17:51 落雨有清·风 阅读(37) 评论(0) 推荐(0)
摘要:一、线程池概念 线程的使用带来了很多好处,比如异步调用,提升性能等,然而,频繁的创建和销毁线程会耗费计算机资源。 类似于数据库连接池,这类带‘池’的功能很好地解决了上述问题。 线程池的核心是创建n个线程放在容器中,等到有任务处理时会将其分配给其中某个线程,执行完之后不会立即销毁,而是放回容器中,等待 阅读全文
posted @ 2020-09-30 18:27 落雨有清·风 阅读(133) 评论(0) 推荐(0)
摘要:本文内容源于视频教程,若有侵权,请联系作者删除 一、概念 先看一个例子 1 public class VolatileDemo { 2 3 public static boolean stop = false; 4 5 public static void main(String[] args) t 阅读全文
posted @ 2020-09-20 00:08 落雨有清·风 阅读(213) 评论(0) 推荐(0)
摘要:本文内容源于视频教程,若有侵权,请联系作者删除。 一、线程安全 1 public class ThreadSafeDemo { 2 3 private static int count = 0; 4 5 public static void main(String[] args) throws In 阅读全文
posted @ 2020-08-27 23:57 落雨有清·风 阅读(52) 评论(0) 推荐(0)
摘要:本文内容源于视频教程,若有侵权,请联系作者删除 一、线程生命周期 1.1 线程的六种状态 初始状态:线程被创建 运行状态:JAVA线程把操作系统中的就绪和运行两种状态统一称为“运行中” 阻塞状态:由于某种原因导致正在运行的线程让出CPU执行权限 等待状态:等待完成返回 超时等待状态:超时以后自动返回 阅读全文
posted @ 2020-08-24 23:38 落雨有清·风 阅读(105) 评论(0) 推荐(0)