摘要:
package 第二章.并发下诡异的HashMap;import org.junit.Test;import java.util.HashMap;import java.util.Map;import java.util.concurrent.atomic.AtomicInteger;/** * C 阅读全文
摘要:
package 第二章.并发下的ArrayList;import java.util.ArrayList;import java.util.List;/** * Created by zzq on 2018/1/19. */public class 并发下的ArrayList { static Ar 阅读全文
摘要:
package 第二章.程序的幽灵之隐蔽的错误;/** * Created by zzq on 2018/1/19. */public class 隐蔽的错误 { public static void main(String[] args) {// int v1=1073741827;// int 阅读全文
摘要:
package 第二章.守护线程;/** * Created by zzq on 2018/1/18. */public class 守护线程Test { public static class MyThread extends Thread{ private int i = 0; @Overrid 阅读全文
摘要:
package 第二章.线程优先级;/** * Created by zzq on 2018/1/18. */public class 线程优先级 { public static class T1 extends Thread{ @Override public void run() { Syste 阅读全文
摘要:
public class 线程组创建 { public static void main(String[] args) { ThreadGroup threadGroup=new ThreadGroup("my"); threadGroup.setMaxPriority(5); System.out 阅读全文
摘要:
volatile这个关键字可能很多朋友都听说过,或许也都用过。在Java 5之前,它是一个备受争议的关键字,因为在程序中使用它往往会导致出人意料的结果。在Java 5之后,volatile关键字才得以重获生机。volatile关键字虽然从字面上理解起来比较简单,但是要用好不是一件容易的事情。由于vo 阅读全文
摘要:
在前面谈到了一些关于内存模型以及并发编程中可能会出现的一些问题。下面我们来看一下Java内存模型,研究一下Java内存模型为我们提供了哪些保证以及在java中提供了哪些方法和机制来让我们在进行多线程编程时能够保证程序执行的正确性。在Java虚拟机规范中试图定义一种Java内存模型(Java Memo 阅读全文
摘要:
package 第二章.新建线程;/** * Created by zzq on 2018/1/17. */public class 线程中断 { public static void main(String[] args) throws InterruptedException { Thread 阅读全文
摘要:
package 第二章.新建线程;/** * Created by zzq on 2018/1/17. */public class 线程中断 { public static void main(String[] args) throws InterruptedException { Thread 阅读全文