自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

原创 解决IntelliJ Idea上执行打包时自动下载maven-metadata文件而导致卡住很久的问题!

问题如题目所述,这个问题困扰了我一阵子,每次打包,都会去下载maven-metadata,而且有很多个需要下载,但是maven私仓上并没有这样的文件,导致每下载一个都卡住很久,所以打一个包要花好多时间,刚开始很少打包,还能忍,后面打包次数多了,实在是忍无可忍,于是找到了彻底解决这个问题的办法: ...

2019-01-21 20:05:24

阅读数 1095

评论数 0

原创 Java高并发编程之ThreadLocal

package vip.ithub.concurrent; import java.util.concurrent.TimeUnit; /** * @author: Chenzhenyong * @description: ThreadLocal是使用空间换时间,synchronized是使用...

2018-11-14 16:06:41

阅读数 40

评论数 0

原创 Java高并发编程之Lock和Condition

前一篇文章,使用synchronized和wait、notify/notifyAll结合解决经典的生产者和消费者面试题,详见:Java高并发编程之经典面试题:生产者与消费者线程 这并不是唯一的解决方案,还有更好的,本篇文章讲解如何使用Lock和Condition来实现。 notify/notify...

2018-11-14 15:49:58

阅读数 53

评论数 0

原创 Java高并发编程之经典面试题:生产者与消费者线程

面试题如下: 写一个固定容量的同步容器,拥有put、get和getCount方法,要求能够支持5个生产者线程以及10个消费者线程的阻塞调用。 写一个容器拥有put、get和getCount,这事不难,难点在于,这是一个同步容器,就是说当有多个线程同时进行put和get的时候,不能出错。 进一...

2018-11-14 14:57:39

阅读数 192

评论数 0

原创 Java高并发编程之ReentrantLock

ReentrantLock和synchronized一样,都是可重入的,但是它与synchronized是有区别的,在了解两者的区别之前,先尝试着,使用ReentrantLock替换synchronized。 先看下面synchronized的代码: public class T016 { ...

2018-11-14 10:41:17

阅读数 46

评论数 0

原创 Java高并发编程之CountDownLatch

上一篇文章解决了这个面试题:实现一个容器,提供两个方法,add和size。写两个线程,线程1添加10个元素到容器中,线程2实现监控元素的个数,当个数到5时,线程2给出提示并结束。 采用synchronized、wait和notify相结合的方式,详见:Java高并发编程之synchronized与...

2018-11-11 22:14:11

阅读数 44

评论数 0

原创 Java高并发编程之synchronized与wait和notify结合

有一道面试题是这样的:实现一个容器,提供两个方法,add和size。写两个线程,线程1添加10个元素到容器中,线程2实现监控元素的个数,当个数到5时,线程2给出提示并结束。 咋一看,似乎并不能,首先,实现一个容器如下: public class MyContainer1 { List&am...

2018-11-11 21:54:03

阅读数 627

评论数 0

原创 Java高并发编程之volatile关键字

前两篇文章讲了synchronized关键字,详见: Java高并发编程之synchronized关键字(一) Java高并发编程之synchronized关键字(二) 依然先从一段简单的代码开始: public class T011 { public boolean running = ...

2018-11-11 21:04:13

阅读数 30

评论数 0

原创 Java高并发编程之synchronized关键字(二)

上一篇文章讲了synchronized的部分关键要点,详见:Java高并发编程之synchronized关键字(一) 本篇文章接着讲synchronized的其他关键点。 在使用synchronized关键字的时候,不要以字符串常量作为锁定对象。看下面的例子: public class T012 ...

2018-11-11 20:50:31

阅读数 161

评论数 0

原创 Java高并发编程之synchronized关键字(一)

首先看一段简单的代码: public class T001 { private int count = 0; private Object o = new Object(); public void m() { //任何线程要执行下面这段代码,必须...

2018-11-11 19:49:00

阅读数 108

评论数 0

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