随笔分类 -  java并发编程

为什么ArrayList线程不安全?为什么ArrayList在多线程情况下会报ConcurrentModificationException?
摘要:看下面的第一个例子,并发读写: package com.andy.juc; import java.util.ArrayList; import java.util.List; import java.util.UUID; public class UnsafeList { public stati 阅读全文
posted @ 2021-05-13 12:35 坚守梦想 阅读(435) 评论(0) 推荐(0) 编辑
synchronized用static修饰和不用static修饰的区别,synchronized同步代码块this和类的Class对象作为锁的区别。
摘要:看下面的例子: package com.andy.juc; public class SynchronizedTest { public static void main(String[] args) { new Thread(new Runnable() { @Override public vo 阅读全文
posted @ 2021-05-12 19:27 坚守梦想 阅读(206) 评论(0) 推荐(0) 编辑
一个例子让你懂java里面的守护线程
摘要:例子如下: public class DemoThread { public static void main(String[] args) throws InterruptedException { Thread thread = new Thread(new Runnable() { @Over 阅读全文
posted @ 2021-05-09 23:26 坚守梦想 阅读(57) 评论(0) 推荐(0) 编辑
ThreadLocal不安全的情况举例(附代码)
摘要:ThreadLocal通过Thread.threadlocals保存ThreadLocal的副本,但是ThreadLocal变量在多线程情况下仍然是不安全的。 class MyClass{ private Integer value; public MyClass(){ } public MyCla 阅读全文
posted @ 2021-04-21 11:25 坚守梦想 阅读(396) 评论(0) 推荐(0) 编辑