![](https://img-blog.csdnimg.cn/20201014180756922.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
JUC并发编程
文章平均质量分 72
云中、漫步
+ --> -
展开
-
JUC(六)——线程间通信
文章目录现在有两个线程去操作一个初始值为0的变量,要求实现其中一个线程对该变量加1,另外一个线程对该变量减1,要求变量的值只能是0和1,并且要进行交替展示,每个线程来10轮操作。使用synchronized、wait、notifyAll来解决问题的代码:...原创 2021-05-01 22:46:19 · 95 阅读 · 0 评论 -
JUC(五)——TimeUnit工具类
文章目录前言一、延时控制(进行休眠控制)二、时间颗粒度转换1、范例:转换一小时为毫秒2、范例:3天后的日期前言在java.util.concurrent开发包里面提供有一个TimeUnit类,这个类单独看它的描述是一个时间单元类。该类是一个枚举类,这也是juc开包里面唯一的一个枚举类。public enum TimeUnit {}这个类之中支持的时间颗粒度有:TimeUnit.DAYS //天TimeUnit.HOURS //小时TimeUnit.MINUT原创 2021-02-24 23:41:52 · 1939 阅读 · 0 评论 -
JUC(四)——线程的创建
文章目录一、继承Thread类二、实现Runnable接口三、实现Callable接口1、Callable创建线程的原理2、创建步骤四、通过线程池创建五、三种创建线程方法对比1、继承Thread和实现Runnable2、实现Runnable和实现CallableJava使用Thread类代表线程,所有的线程对象都必须是Thread类或其子类的实例。Java可以用四种方式来创建线程,一、继承Thread类通过继承Thread类来创建并启动多线程的一般步骤如下:1、定义Thread类的子类,并重写该类原创 2021-02-10 10:07:20 · 96 阅读 · 0 评论 -
JUC(二)——线程基础及线程状态
文章目录一、常见线程名词解释二、线程自身的信息三、线程的六种状态1、源码2、简述3、线程状态图四、状态详细说明1、初始状态(NEW)2.1、就绪状态(RUNNABLE之READY)2.2、运行中状态(RUNNABLE之RUNNING)3、阻塞状态(BLOCKED)4、等待(WAITING)5、超时等待(TIMED_WAITING)6、终止状态(TERMINATED)五、线程状态的其他解读:一、常见线程名词解释主线程:JVM调用程序main()所产生的线程。当前线程:这个是容易混淆的概念。一般指通过Th原创 2021-02-04 23:10:00 · 129 阅读 · 0 评论 -
JUC(一)——JUC简介
1、什么是JUC?java.util.concurrent 在并发编程中使用的工具类。2、进程与线程进程: 后台运行的每一个程序就是一个进程,是一个正在执行的程序。比如用QQ音乐放音乐,同时用QQ聊天,每一个都是一个进程。线程: 线程是进程中的一个独立的控制单元,一个进程中至少包含一个线程。比如,我们使用Idea写代码的同时,idea可以进行一些语法检查,这就是idea的一些线程。1、Java虚拟机在执行的时候默认是有两个线程的,一个是负责java程序执行的main线程,也叫主线程,另一个是负原创 2021-02-02 01:05:42 · 505 阅读 · 0 评论