自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(9)
  • 收藏
  • 关注

原创 go语言学习-控制协程总数量

package mainimport ( "fmt" "sync" "time")var MAX = 5var limitChan = make(chan bool, MAX)var wg = sync.WaitGroup{}//模拟线程func thread(no int) { //主线程等待+1 wg.Add(1) fmt.Println("this thread no is ", no) //等待3秒,模拟线程执行 time.Sleep(3*time.Sec.

2021-04-20 20:26:06 1124

原创 源码分析与实战——Java动态代理的两种方式

SpringAOP可以说是面试必问的内容之一,这是作为JAVA高级开发者必须掌握的技能之一。今天我结合实例、源码分析一下这一套机制。默认大家对静态代理和动态代理已经有了基础的理解。1、动态代理静态代理和动态代理的差别在此不再多说,网上到处是。我主要结合源码想说说动态代理,它是SpringAop的基础。1.1 JDK自带的代理机制1.1.1 示例接口定义:package TestPro...

2021-03-11 19:06:32 273

原创 IT小公司管理的几点思考

我最近好几年一直在小公司待着,基本做的都是技术架构+管理的工作。最近我也进行了一下总结,所以决定也写一篇博文,把我所遇到的一些问题和困惑都写出来,和大家讨论讨论。首先我认为:小公司管理很困难,而所有的管理困境的根源都在于钱!...

2020-02-17 17:48:34 6063 8

原创 源码分析与实战——深入理解ScheduledThreadPool线程池延时执行机制(二)

1、前言在上篇博文中《源码分析与实战——深入理解ScheduledThreadPool线程池延时执行机制(一)》中,其实我们留下几个问题:ScheduledThreadPool是如何保证任务delay到时准时执行的?任务执行顺序会不会出问题?毕竟按照siftUp()方法的源代码,是无法保证队列是按time有序的。我们今天来探讨一下。2、复习上篇博文中我们学习了ScheduledThreadP...

2020-02-13 19:32:59 963

原创 IT小公司避坑及生存指南

毫无疑问,所有的人都愿意去大公司工作!大公司的优点自不用多说,规范、薪资、福利、稳定性等等都完爆小公司。但是大公司要不了那么多人!全国中小企业为城镇提供了75%的就业岗位,这意味着大部分人都得进入中小企业讨生活!我工作这17年来,大公司待过,中型公司也待过,几个人的小微创业公司也待过。我的简历其实并不好看,因为后期我基本都在小企业!非常悲催的是,这几家公司要么直接倒闭,要么发展非常不好。我觉得...

2020-02-11 17:05:21 7820 6

原创 源码分析与实战——深入理解ScheduledThreadPool线程池延时执行机制(一)

1、前言在上篇博客《源码分析与实战——深入理解Java的4种线程池》中,我们详细分析了一下Java四种线程池的基本源码,编写代码进行了尝试。其中single单线程池、fiexed定长线程池、cached缓存线程池都比较简单,scheduled线程池则复杂一些。今天我们结合延迟队列来对它进行源码分析,详细讲解一下延时执行线程池的工作原理。2、线程池定义首先,我们还是再来看一下最简单的一个使用示...

2020-02-10 23:53:28 1284

原创 源码分析与实战——深入理解Java的4种线程池

大家都知道,Java一共提供了4中

2020-02-08 21:49:24 644

原创 源码分析与实战——彻底理解Thread和Runnable使用

众所周知,在Java高级开发里面,多线程会经常被使用。通常有2种方式去启动一个新线程:定义一个Thread的子类,在子类中重写run方法。 定义一个类实现Runnable接口,重写run方法;然后通过新建Thread线程去执行。 前者是完全独立的线程,可以直接运行;后者不可以直接运行,必须通过Thread线程去运行。当需要多个线程去完成同一个任务时,一般建议使用第二种方...

2020-02-07 14:59:16 1042

原创 @Value取值为NULL的解决方案

@Value取值为NULL的解决方案在spring mvc架构中,如果希望在程序中直接使用properties中定义的配置值,通常使用一下方式来获取: @Value("${tag}") private String tagValue;但是取值时,有时这个tagvalue为NULL,可能原因有:使用static或final修饰了tagValue,如下: private stat

2017-02-09 13:37:43 32592 9

空空如也

空空如也

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

TA关注的人

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