美文网首页
Java多线程-提纲

Java多线程-提纲

作者: xgangzai | 来源:发表于2019-11-19 22:09 被阅读0次

多线程系列总结

一、线程、多线程出现的背景

解决CPU、内存和IO三者间的速度差异,CPU利用率最大化。

二、多线程带来的问题

可见性

因为CPU缓存,一个线程对某个变量的修改,另一个线程不能立即看到

原子性

因为线程调度,一个线程还未执行完语言级的语句,就被让出CPU时间片,另一个线程在旧的数据上继续操作,等先前线程重新被调度执行后,继续那个线程的更新覆盖掉。

有序性

编译器优化CPU指令,在单线程中完全没问题,但是在多线程中,可能会导致其他线程读到中间态数据

三、怎么解决多线程带来的三个问题

1.解决可见性问题

volatile 6项Happens-Before规则

2.解决原子性问题

使用管程

3.解决有序性

还是volatile?防止指令重排

四、并发编程最佳实践-9个并发编程设计模式

相关文章

  • Java多线程-提纲

    多线程系列总结 一、线程、多线程出现的背景 解决CPU、内存和IO三者间的速度差异,CPU利用率最大化。 二、多线...

  • 带你搞懂Java多线程(五)

    带你搞懂Java多线程(一)带你搞懂Java多线程(二)带你搞懂Java多线程(三)带你搞懂Java多线程(四) ...

  • 带你搞懂Java多线程(六)

    带你搞懂Java多线程(一)带你搞懂Java多线程(二)带你搞懂Java多线程(三)带你搞懂Java多线程(四)带...

  • Java多线程目录

    Java多线程目录 Java多线程1 线程基础Java多线程2 多个线程之间共享数据Java多线程3 原子性操作类...

  • java多线程--Callable

    **移步[java多线程系列文章]Java多线程(二十二)---LockSupport工具Java 停止线程 一、...

  • android 多线程 — 线程的面试题和答案

    这里都是我从各个地方找来的资料,鸣谢: Java多线程干货系列—(一)Java多线程基础 JAVA多线程和并发基础...

  • 5月份第一周学习安排

    学习内容: java多线程及线程同步的方法(使用) java多线程各种同步方法的原理和优缺点 java多线程设计模...

  • 带你搞懂Java多线程(四)

    带你搞懂Java多线程(一)带你搞懂Java多线程(二)带你搞懂Java多线程(三) 什么是线程间的协作 线程之间...

  • Java基础(六)

    多线程 Java多线程并发 1.1 JAVA 并发知识库 1.2 JAVA 线程实现/创建方式 1.2.1 继承 ...

  • (五) volatile关键字

    Java多线程目录 1 背景 理解Java多线程的内存抽象逻辑请阅读java多线程内存模型,当代操作系统,处理器为...

网友评论

      本文标题:Java多线程-提纲

      本文链接:https://www.haomeiwen.com/subject/jxtnictx.html