- 博客(6)
- 收藏
- 关注
原创 findLoadedClass详解
问题AClassLoader的parent为BClassLoader,BClassLoader的parent为CClassLoader,当AClassLoader调用loadClass()加载类,并最终由CClassLoader加载的类,到底算谁加载的?后续AClassLoader再加载相同类时,是否能直接从AClassLoader的findLoadedClass0()中找到该类并返回,还是说再走一次双亲委派最终从CClassLoader的findLoadedClass0()中找到该类并返回?Syste
2021-08-28 21:40:46 1716
原创 Netty学习笔记(二):Netty核心模块组件
二、Netty核心模块组件1、Bootstrap、ServerBootstrap一个Netty应用通常由一个Bootstrap开始,主要作用是配置整个Netty程序,串联各个组件,Netty中Bootstrap类是客户端程序的启动引导类,ServerBootstrap是服务端启动引导类常用方法:public ServerBootstrap group(EventLoopGroup parentGroup, EventLoopGroup childGroup):该方法用于服务器端,用来设置两个Ev
2021-08-28 14:27:37 1093
原创 Netty学习笔记(一):Netty高性能架构设计
一、Netty高性能架构设计1、线程模型基本介绍目前存在的线程模型有:传统阻塞I/O服务模型Reactor模式根据Reactor的数量和处理资源池线程的数量不同,有3种典型的实现单Reactor单线程、单Reactor多线程、主从Reactor多线程Netty线程模型:Netty主要基于主从Reactor多线程模型做了一定的改进,其中主从Reactor多线程模型有多个Reactor2、传统阻塞I/O服务模型1)、模型特点采用阻塞IO模式获取输入的数据每个连接都需要独立的线程完成数据的
2021-08-21 21:57:50 627
原创 BIO、NIO、AIO详解
一、Java的I/O演进之路Java共支持3种网络编程的I/O模型:BIO、NIO、AIOBIO:同步并阻塞(传统阻塞型),服务器实现模式为一个连接一个线程,即客户端有连接请求时服务器端就需要启动一个线程进行处理,如果这个连接不做任何事情会造成不必要的线程开销 NIO:同步非阻塞,服务器实现模式为一个线程处理多个请求(连接),即客户端发送的连接请求都会注册到多路复用器上,多路复用器轮询到连接有I/O请求就进行处理 AIO:异步非阻塞,服务器实现模式为一个有效请求一个线程,客户端的I/O请求
2021-08-15 10:41:15 19082 6
原创 ContextClassLoader详解
ContextClassLoader是通过Thread.currentThread().getContextClassLoader()返回该线程上下文的ClassLoader1、前置知识在讲解ContextClassLoader之前,需要先提两个知识点:1)双亲委派模型启动类加载器(Bootstrap ClassLoader):负责将放在<JAVA HOME>\lib目录中的,或者被-Xbootclasspath参数所指定的路径中的,并且是虚拟机识别的类库加载到虚拟机内存中。启动类加
2021-08-14 11:27:44 2471
原创 vue中使用Echarts
安装echarts依赖npm install echarts --save代码实现封装Echarts组件Echarts.vue:<template> <div :id="id" :style="styleObject" /></template><script>import * as echarts from "echarts";import "echarts/lib/chart/pie";import "echarts/lib/com
2021-08-12 21:42:27 561 2
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人