![](https://img-blog.csdnimg.cn/20201014180756724.png?x-oss-process=image/resize,m_fixed,h_224,w_224)
Java并发编程
文章平均质量分 92
线程相关的介绍以及线程池的介绍和知识点
Mr_25kjiang
这个作者很懒,什么都没留下…
展开
-
一、Java并发机制的底层实现
开篇1.1 多线程一定快吗不一定,因为线程的创建和上下文的切换也需要开销。volatilevolatile可以看成是轻量级的synchronized,保证了共享变量的”可见性“。如果volatile变量修饰符使用恰当 的话,它比synchronized的使用和执行成本更低,因为它不会引起线程上下文的切换和调度。2.1 volatile如何保证可见性被volatile声明的变量会被JIT编译器生成一条带有Lock前缀指令的汇编指令。如下:0x01a3de1d: movb $0×0,0×原创 2021-04-29 13:37:18 · 68 阅读 · 0 评论 -
线程池多任务的执行顺序
线程池场景面试官:“假设我们有一个线程池,核心线程数为10,最大线程数也为20,任务队列为100。现在来了100个任务,线程池里现在有几个线程运行?”粉丝豪:“应该是10吧。”面试官:“你确定?”粉丝豪:“确定啊,就是10…”于是乎,粉丝豪就回去等通知了~此题的陷阱,大家如果看出来了,本文就不用看了!其实这道题正确的答案是"不一定!"因为并没指明是哪一种线程池机制,带着我们的疑问继...原创 2020-04-28 15:32:54 · 3448 阅读 · 1 评论 -
线程的创建方式
多线程创建、开启的四种方式继承Thread类 public static void main(String[] args) { //创建继承Thread类的自定义对象 MyThread myThread = new MyThread(); //调用start方法开启线程 myThread.start(); }...原创 2018-11-22 10:11:17 · 130 阅读 · 0 评论