- 博客(5)
- 资源 (2)
- 问答 (1)
- 收藏
- 关注
原创 线程池ThreadPoolExecutor源码解析
什么是多线程?多线程是为了使得多个线程并行的工作以完成多项任务,以提高系统的效率。线程是在同一时间需要完成多项任务的时候被实现的。其实如果学过操作系统的同学的话就知道,其实我们操作底层中的cpu是以时间片的方式供这些线程使用,其实实时每次只有一个线程去使用cpu,但是时间片的间隔很小,所以让人以为是并行的。什么时候需要使用多线程?其实使用多线程的场景很多,比如你有好多任务需要做,假...
2018-07-31 20:04:50 217
原创 ReentrantLock与AbstractQueuedSynchronizer源码解析
在我们开发过程中,经常要和多线程打交道,多线程其实也是面试过程中必须问的问题,其实为什么会要使用多线程,这个大家可以百度下就清楚了。我们今天讲的这个ReentrantLock其实是对于同步(安全)的问题而产生的。大家应该都知道synchronized吧,他的作用业很简单,其实就是为了防止多线程下操作数据导致一些列问题,在1.5之前,其实都是基于这个synchronized的,而在jdk5的时候就推...
2018-07-30 21:15:20 366
原创 spring security------过滤器源码解析(二)
我们上篇已经解析过了前三个过滤器的源码,这篇将会去解析之前剩下的几个类 - BasicAuthenticationFilter - RequestCacheAwareFilter - SecurityContextHolderAwareRequestFilter - AnonymousAuthenticationFilter 废话不多说,直接进入主题吧BasicAuthe...
2018-07-21 18:01:36 655
原创 spring security------过滤器源码解析(一)
之前我们讲过了spring security的基本用法,我们应该也能大致了解他的作用,这里在重复一遍他的作用认证,也就是去确认这个用户在我们系统中是否存在。授权,这个可能有点混淆,但是总的来说就是用户是否有权限操作某个接口 对于第二个大家应该知道在security中有个叫hasrole的东西,也就是我们可以控制接口的权限,当我们为某个接口设置了admin的角色的权限时候,这时候只有这个用...
2018-07-21 16:44:16 1727
原创 rabbitmq-----Routing和topic模式
前几篇已经说了mq的基本用法,也分别使用了普通的java写法和spring boot基于注解的方法去实现了mq的接收消息。我们上一节的最后给大家说过,有一个叫routingKey的东西,好像我们暂时还没有使用过。本节讲的这两种模式都会使用到routingKey来实现我们的mq消费。Routing模式听这个名称就知道这个模式和路由有关,我们上一篇说的广播的模式这种方式有点缺少灵活性,他只是广...
2018-07-01 13:20:50 17137 3
gallery显示大量图片显示问题
2016-04-09
TA创建的收藏夹 TA关注的收藏夹
TA关注的人