
多线程
本专栏介绍了多线程的基本知识点
王如霜
这个作者很懒,什么都没留下…
展开
-
【多线程】Java创建多线程的4种方法
一:继承Thread类定义Thread类的子类,并重写该类的run方法,该run方法的方法体就代表了线程要完成的任务。因此把run()方法称为执行体创建Thread子类的实例,即创建了线程对象调用线程对象的start()方法来启动该线程public class ExtendsThreadTest extends Thread{ //重写run方法 @Override...原创 2019-01-13 21:31:52 · 270 阅读 · 2 评论 -
【多线程】线程池
线程线程是什么一条代码的执行流,完成一组代码,通常将这一组代码称为一个任务线程的本质将代码送给cpu执行用多线程的目的充分利用cpu资源,并发做多件事单核cpu机器上适不适用多线程适用,如果是单线程,线程中等待IO时,此时cpu就空闲了线程什么时候让出cpu阻塞,wait,awit,等待I/Osleepyield线程结束cpu在多线程中的作用执行代码线程是不是越...原创 2019-05-28 10:25:50 · 277 阅读 · 2 评论 -
【多线程】多线程的项目实战
文章目录1.为什么用多线程2.什么时候用多线程3.多线程编码项目实战4. 为什么不用join() 需求是这样的:最近在做一个有关学校考试的项目,其中老师可能任课好几门学科,每个学科有好几个班上,考完试后,老师想打印学生答题试卷(因为是上机考试),即涉及到了批量打印试卷,并且下载时将这些试卷打成一个压缩包,此功能用到了多线程1.为什么用多线程 充分利用cpu资源2.什么时候用多线程高...原创 2019-05-28 17:28:09 · 10340 阅读 · 5 评论 -
【多线程】Volatile 线程间变量可见
线程间如何共享数据 使用全局变量或共享对象线程间变量为什么不可见如何使线程间变量可见synchronizedvlatile原创 2019-05-28 17:31:12 · 536 阅读 · 1 评论 -
【多线程】CAS原理
引言 在Java并发包中有这样一个包,java.util.concurrent.atomic,该包是对Java部分数据类型的原子封装,在原有数据类型的基础上,提供了原子性的操作方法,保证了线程安全。那他们是如何保证线程安全的那,采用了CAS机制:CAS CAS 指的是现代 CPU 广泛支持的一种对内存中的共享数据进行操作的一种特殊指令(底层用C实现的)。这个指令会对内存中的共享数据做原子...原创 2019-06-02 21:44:05 · 786 阅读 · 4 评论 -
【多线程】synchronized与Lock的区别
synchronized关键字,基于jvm锁释放:@1:获得锁的线程执行完了该代码块 @2.线程执行出现异常,是一种被动方式释放,通过Monitor.exit()释放,Monitor更多讲解参见:https://blog.youkuaiyun.com/ignorewho/article/details/80854625是一种可重入锁、可中断锁,适用于并发少Lock接口,基于java编程调用...原创 2019-06-02 21:44:49 · 430 阅读 · 2 评论