摘要:
Java代码在编译后会变成Java字节码,字节码被类加载器加载到JVM里,JVM执行字节码,最终需要转化为汇编指令在CPU上执行,Java中所使用的并发机制依赖于JVM的实现和CPU的指令。 2.1 volatile 的应用 在多线程并发编程中synchronized和volatile都扮演着重要的 阅读全文
摘要:
并发编程的目的是为了让程序运行的更快,但是并不是启动更多的线程就能让程序最大限度的并发执行。会面临非常多的挑战,比如上下文切换的问题、死锁的问题,以及软件硬件资源的问题等。 1.1 上下文切换 即使是单核处理器也支持多线程执行代码,CPU通过分配CPU时间片来实现这个机制。时间片是CPU分配给各个线 阅读全文
摘要:
之前看过Java并发编程的艺术电子版,但感觉还需要再仔细了解以下,于是又买了实体书,正好现在有时间可以好好学习一下Java 的并发编程。 首先我们来看一下这本每一章大体上在讲什么。 第1章 介绍Java并发编程的挑战,主要讲述进入并发编程的世界可能会遇到的问题,以及如何解决 第2章 介绍Java并发 阅读全文
摘要:
阅读全文
摘要:
一.内部类基础 在 Java 中,可以将一个类定义在另一个类里面或者一个方法里面,这样的类称为内部类。广泛意义上的内部类一般来说包括这四种:成员内部类、局部内部类、匿名内部类和静态内部类。下面就先来了解一下这四种内部类的用法。 1.成员内部类 成员内部类是最普通的内部类,它的定义为位于另一个类的内部 阅读全文
摘要:
package com.example.demo; import java.util.concurrent.Semaphore; /** * @ClassName H2O * @Description: 1117. H2O 生成(多线程) * @Author xtanb * @Date 2019/9/23 * @Version V1.0 **/ public class H2O ... 阅读全文
摘要:
package com.example.demo; import java.util.concurrent.CountDownLatch; /** * @ClassName Foo * @Description: 1114. 按序打印(多线程) * @Author xtanb * @Date 2019/9/23 * @Version V1.0 **/ public class Foo { priv 阅读全文
摘要:
1.0 countdownlatch关键字的使用 阅读全文
摘要:
1.0 synchronized 2.0 ReentranLock 阅读全文
摘要:
1.0 synchronized 2.0 ReentrantLock 阅读全文