自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

叶先森很生气

点滴积累

  • 博客(3)
  • 收藏
  • 关注

原创 集合的线程安全性——CopyOnWriteArrayList写时复制

常用的集合ArrayList,LinkedList,HashSet,TreeSet,HashMap,TreeMap等均为线程不安全集合。当运行以下程序时,会报java.util.ConcurrentModificationException异常public class ContinerNotSafeDemo { public static void main(String[] arg...

2019-07-19 16:38:17 780

原创 synchronized 和lock的区别

1、具体层面synchronized是java关键字jvm层面,底层是monitorenter对象来写成,其实wait/notify等方法也依赖于monitor对象只有在同步方法中才能调用wit/notify等方法;lock是具体类,是api层面的锁。2、使用方法synchronized不需要用户去手动释放,当synchronized代码完成后系统会自动让线程释放对象的占用。 Re...

2019-07-19 14:38:52 184

原创 生产者-消费者模型进阶

生产者与消费者模型是多线程环境下经典问题之一。生产者与消费者共同操作共享资源(一般用队列存储),生产者与消费者应该保证以下几点:1、同一时间内只能有一个生产者生产(生产方法加锁sychronized)2、同一时间内只能有一个消费者消费(消费方法加锁sychronized)3、生产者生产的同时消费者不能消费(生产方法加锁sychronized)4、消费者消费的同时生产者不能生产(...

2019-07-19 14:27:07 150

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除