多线程
王加油
The best or nothing!
展开
-
JUC-04
16、JMM 请你谈谈你对Volatile的理解 Volatile 是 Java 虚拟机提供的轻量级的同步机制 1、保证可见性 2、不保证原子性 3、禁止指令重排 什么是 JMM JMM:Java内存模型,不存在的东西,概念!约定! 关于JMM的一些同步的约定: 1、线程解锁前,必须把共享变量立刻刷回主存。 2、线程加锁前,必须读取主存中的最新值到工作内存中! 3、加锁和解锁是同一把锁 线...原创 2020-04-22 00:30:42 · 211 阅读 · 0 评论 -
JUC-03
9、读写锁 ReentrantReadWriteLock package com.won.rw; import java.util.HashMap; import java.util.Map; import java.util.concurrent.locks.ReadWriteLock; import java.util.concurrent.locks.ReentrantReadWrite...原创 2020-04-21 15:17:31 · 212 阅读 · 0 评论 -
JUC-02
6、集合类不安全 List 不安全 package com.won.unsafe; import java.util.*; import java.util.concurrent.CopyOnWriteArrayList; public class ListTest { public static void main(String[] args) { // 并发下,...原创 2020-04-19 23:31:02 · 152 阅读 · 0 评论 -
JUC-01
JUC 1、什么是JUC 源码+官方文档 java.util工具包、包、分类 业务:普通的线程代码 Thread Runable 没有返回值、效率相比于Callable相对较低 2、线程和进程 线程、进程,如果不能使用一句话说出来的技术,不扎实 进程:一个程序,QQ.exe Music.exe 程序的集合; 一个进程往往可以包含多个线程,至少包含一个! Java默认有几个线程? 2个!...原创 2020-04-19 16:29:47 · 242 阅读 · 0 评论 -
多线程
1、线程简介 2、线程实现 2.1 继承Thread类 自定义线程类继承Thread类 重写run()方法,编写线程执行体 创建线程对象,调用start()方法启动线程 package com.won.demo01; // 创建线程方式一:继承Thread类,重写run()方法,调用start开启线程 public class TestThread1 extends Thread{ ...原创 2020-04-17 18:13:41 · 109 阅读 · 0 评论 -
《Java并发编程之美》读书笔记及代码-第一章
1.1什么是线程 进程:系统进行资源分配的和调度的基本单位。 线程:CPU分配的基本单位。 程序计数器:一块内存区域,用来记录线程当前要执行的指令地址。 堆:主要存放使用new操作创建的对象实例。 方法区:用来存放JVM加载的类、常量及静态变量等信息。 1.2线程的创建与运行 Java中有三种方式创建线程。 继承Thread类方式的实现: public class Thre...原创 2019-11-01 12:51:29 · 353 阅读 · 0 评论