![](https://img-blog.csdnimg.cn/20201014180756916.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Java并发
YJ_GuiGuZi
这个作者很懒,什么都没留下…
展开
-
Java并发之volatile
volatile 与 并发三特性volatile 保证可见性volatile修饰共享变量,一旦一个线程对该共享变量作出修改,当修改写回主内存时,会使得其他访问该共享变量的线程中的值失效,从内存中重新提取最新修改后的值。public class DemoVisibility { // 1、创建一个共享变量 private static volatile boolean flag = true; private static Object obj = new Object();原创 2020-08-18 21:09:43 · 132 阅读 · 0 评论 -
Java并发之synchronized
并发编程的三个问题可见性可见性 是指一个线程对共享变量进行修改,其他线程立即得到修改后的最新值。可见性演示: 1、创建一个共享变量 2、创建一条线程不断读取共享变量 3、创建另一条线程修改共享变量public class DemoVisibility { // 1、创建一个共享变量 private static boolean flag = true; public static void main(String[] args) throws I原创 2020-08-18 16:42:28 · 166 阅读 · 0 评论 -
Java并发之线程状态
线程状态新建状态(NEW) 使用 new 操作符创建一个线程,并且尚未调用 start() 方法,此时线程处在新建状态。Thread t = new DemoThread();System.out.println(t.getState());// output: NEW可运行状态/就绪状态(RUNNABLE) 一个新创建的线程并不自动开始运行,要执行线程,必须调用线程的 start() 方法。当线程对象调用 start() 方法即启动了线程,start() 方法创建线程运原创 2020-08-04 18:25:34 · 124 阅读 · 0 评论 -
Java并发之多线程的实现方式
多线程的四种实现方式继承 Thread 类实现多线程创建一个类,并继承 Thread 类重写 Thread 类中的 run() 方法(业务代码)实例化创建好的线程类调用实例化对象的 start() 方法启动线程public class ThreadDemo { public static void main(String[] args){ // 3、实例化创建好的线程类 Thread t = new DemoThread(); // 4原创 2020-08-01 17:30:10 · 210 阅读 · 0 评论 -
Java并发之进程与线程的区别
进程与线程何为进程 进程是程序的一次执行过程,是系统进行资源分配的基本单位,实现了操作系统的并发。系统运行一个程序即是一个进程从创建,运行到消亡的过程。何为线程 线程是一个比进程更小的执行单位,是CPU调度和分派的基本单位,一个进程在其执行的过程中可以产生多个线程,实现的是进程内部的并发。进程与线程的区别进程线程系统进行资源分配的最小单位程序执行的最小单位实现的是操作系统的并发实现的是进程内部的并发进程有自己独立的地址空间线程共享数据创建、原创 2020-08-01 17:27:01 · 92 阅读 · 0 评论