多线程
文章平均质量分 95
Sun-Yang
这个作者很懒,什么都没留下…
展开
-
并发五-J.U.C
并发五-J.U.C18. JUC-原子类18.1 原子整数J.U.C并发包提供了:(基本类型)AtomicBooleanAtomicIntegerAtomicLong以AtomicInteger为例:package com.sunyang.concurrentstudy;import java.util.concurrent.atomic.AtomicInteger;/** * @program: ConcurrentStudy * @description: Dmeo原创 2021-09-11 18:07:34 · 343 阅读 · 0 评论 -
并发四-线程池
并发四-线程池20. 共享模型之不可变20.1 SimpleDateFormat与DateTimeFormatterpackage com.sunyang.concurrentstudy;import lombok.extern.slf4j.Slf4j;import java.text.ParseException;import java.text.SimpleDateFormat;import java.time.format.DateTimeFormatter;import ja原创 2021-09-11 18:06:03 · 227 阅读 · 0 评论 -
并发三-共享模型之内存
并发三-共享模型之内存11. 共享模型之内存11.1 Java内存模型JMM 即 Java Memory Model,它定义了主存、工作内存抽象概念,底层对应着 CPU 寄存器、缓存、硬件内存、 CPU 指令优化等。JMM 体现在以下几个方面原子性 - 保证指令不会受到线程上下文切换的影响可见性 - 保证指令不会受 cpu 缓存的影响有序性 - 保证指令不会受 cpu 指令并行优化的影响11.1.1 可见性退不出的循环package com.sunyang.concurre原创 2021-09-11 18:05:02 · 121 阅读 · 0 评论 -
并发二-锁
并发二-锁4. 共享模型之管程4.1 共享带来的问题老王(操作系统)有一个功能强大的算盘(CPU),现在想把它租出去,赚一点外快小南、小女(线程)来使用这个算盘来进行一些计算,并按照时间给老王支付费用但小南不能一天24小时使用算盘,他经常要小憩一会(sleep),又或是去吃饭上厕所(阻塞 io 操作),有 时还需要一根烟,没烟时思路全无(wait)这些情况统称为(阻塞)在这些时候,算盘没利用起来(不能收钱了),老王觉得有点不划算另外,小女也想用用算盘,如果总是小原创 2021-09-11 18:03:52 · 285 阅读 · 0 评论 -
并发一-线程
并发1.进程与线程1.1 进程程序由指令和数据组成,但这些指令要运行,数据要读写,就必须将指令加载至 CPU,数据加载至内存。在指令运行过程中还需要用到磁盘、网络等设备。进程就是用来加载指令、管理内存、管理 IO 的。当一个程序被运行,从磁盘加载这个程序的代码至内存,这时就开启了一个进程。进程就可以视为程序的一个实例。大部分程序可以同时运行多个实例进程(例如记事本、画图、浏览器 等),也有的程序只能启动一个实例进程(例如网易云音乐、360 安全卫士等)1.2 线程一个进程之内可以分为一到原创 2021-09-06 17:38:12 · 83 阅读 · 0 评论