- 博客(8)
- 收藏
- 关注
原创 SpringIOC加载过程
今天详细学习了一遍SpringIOC加载过程,将网上搜集到的信息进行了下整理,期望能对您起到帮助。本文大部分取自影公子的博客他写得十分详细。加载容器ApplicationContext context = new ClassPathXmlApplicationContext("classpath:application.xml");进行ClassPathXmlApplication...
2020-03-10 15:49:36
297
原创 计算机网络常考知识点整合
这里跟大家分享下我复习时整理的计算机网络常考知识点。网络协议OSI7层模型物理层:传输物理比特数据链路层:将比特封装成帧网络层:将网络地址翻译成物理地址,路由选择。路由器。分组:数据报。IP协议传输层:将大数据分割传给网络层,流量控制。TCP,UDP协议会话层:建立应用程序的通讯表示层:解决不同系统间通信语法问题应用层:通过应用进程间的交互来完成特定网络应用,报文TCP/I...
2020-03-09 19:27:44
786
原创 SpringBean学习总结
SpringBean概述BeanDefinition:主要用来描述Bean的定义BeanDefinitionRegistry:提供了向IOC容器手动注册BeanDefinition的方法BeanFactory:Spring框架最核心的接口提供IOC的配置机制包含Bean的各种定义,便于实例化Bean建立Bean之间的依赖关系Bean生命周期的控制BeanFactory与Ap...
2020-03-08 17:40:33
417
原创 OS死锁相关的问题
什么是死锁?死锁是指多个进程因竞争资源而造成的一种僵局(互相等待),若无外力作用,这些进程都将无法向前推进。死锁的必要条件互斥:一个资源一次只有一个进程使用。如果另一进程申请该资源,那么申请进程必须等到该资源被释放为止。占有并等待:一个进程必须占有至少一个资源,并等待另一资源,而该资源为其他进程所占有。非抢占:资源不能被抢占,即资源只能在进程完成任务后自动释放。循环等待:有一组等待进...
2020-03-05 15:38:45
215
原创 线程池与阻塞队列详解
线程池线程池介绍一种线程使用模式。线程过多会带来调度开销,进而影响缓存局部性和整体性能。而线程池维护着多个线程,等待着监督管理者分配可并发执行的任务。这避免了在处理短时间任务时创建与销毁线程的代价。线程池不仅能够保证内核的充分利用,还能防止过分调度。可以通俗理解为,在一个容器中存储了一些已经存在的线程,再有请求进来的时候可以直接调用,而不用创建新的先城市里,同时可以管理线程任务的调度和流...
2020-03-04 16:56:34
902
原创 SpringAOP原理介绍与其底层实现
AOP介绍AOP(Aspect-Oriented Programming:面向切面编程)能够将那些与业务无关,却为业务模块所共同调用的逻辑或责任(例如事务处理、日志管理、权限控制等)封装起来,便于减少系统的重复代码,降低模块间的耦合度,并有利于未来的可拓展性和可维护性。关注点分离:不同的问题交给不同的部分去解决面向切面编程AOP正是此种技术的体现通用化功能代码的实现,对应的就是所谓的切面...
2020-03-03 18:01:54
378
原创 synchronized底层实现的原理与锁的膨胀
synchronized底层实现的原理最近在看面经得时候看到有面试官问了这道题,说一说synchronized底层实现的原理,在网上查阅后分享给大家。关于这个问题,主要有比较重要的两个概念Monitor监视器锁和MarkWord(对象标记)。Monitor每个对象有一个监视器锁(monitor)。当monitorm被占用时就会处于锁定状态,线程执行monitorenter指令时尝试获取mo...
2020-03-02 15:52:03
238
原创 NIO底层:IO多路复用与Select/Poll/Epoll
IO多路复用相信各位小伙伴在学习JavaIO知识时会看到其底层实现是使用了操作系统中的IO多路复用。那么IO多路复用到底是什么呢?面试题中出现的select/poll/epoll,poll和epoll的区别又指的是什么呢?今天我就带大家来看下:I/O多路复用(multiplexing)的本质是通过一种机制(系统内核缓冲I/O数据),让单个进程可以监视多个文件描述符,一旦某个描述符就绪(...
2020-03-01 15:43:07
604
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人