![](https://img-blog.csdnimg.cn/20190927151101105.png?x-oss-process=image/resize,m_fixed,h_224,w_224)
JAVA并发编程
文章平均质量分 75
JAVA并发编程
lisin-lee-cooper
这个作者很懒,什么都没留下…
展开
-
线程相关概念
一.线程运行的原理 每个线程启动后,虚拟机就会为其分配一块栈内存。 每个栈由多个栈帧(Frame)组成,对应着每次方法调用时所占用的内存 每个线程只能有一个活动栈帧,对应着当前正在执行的那个方法。 线程上下文切换(Thread Context Switch) 因为以下一些原因导致 cpu 不再执行当前的线程,转而执行另一个线程的代码 线程的 cpu 时间片用完 垃圾回收 有更高优先级的线程需要运行 线程自己调用了 sleep、yield、wait、join、park、synchronized、lock 等方原创 2022-05-28 21:13:51 · 102 阅读 · 0 评论 -
线程池参数
一.为什么要使用线程池 1)降低系统资源得消耗,重复创建和销毁线程将消耗系统资源 2)通过线程池有效的管理线程,避免无限制地创建线程 3)可以创建定时或延时任务 二.线程池的主要参数 public ThreadPoolExecutor(int corePoolSize, int maximumPoolSize, long keepAliveTime,原创 2021-03-26 16:43:18 · 69 阅读 · 0 评论 -
多线程基本概念
一.基本概念 进程:程序运行资源分配得最小单位 线程:cpu调度得最小单位,必须依赖进程而存在 并行: 同一时刻发生 并发:同一时间段发生 cpu时间片轮转机制:cpu调度,导致上下文切换 二.创建线程得几种方式 继承Thread类 实现Runnable 接口 通过Callable 和 Future创建线程 通过线程池创建 三、如何配置合理线程数 获取系统cpu核心数 Runtime.getRuntime().availableProcessors() (1)CPU密集型: 定义:CPU密集型的意思就是原创 2021-03-26 14:29:16 · 186 阅读 · 0 评论