Java
文章平均质量分 93
Java
阳光帅青年
努力就有收获,let's go!
展开
-
IO多路复用的三种机制Select,Poll,Epoll
I/O多路复用(multiplexing)的本质是通过一种机制(系统内核缓冲I/O数据),让单个进程可以监视多个文件描述符,一旦某个描述符就绪(一般是读就绪或写就绪),能够通知程序进行相应的读写操作select、poll 和 epoll 都是 Linux API 提供的 IO 复用方式。相信大家都了解了Unix五种IO模型,不了解的可以 => 查看这里[1] blocking IO - 阻塞IO[2] nonblocking IO - 非阻塞IO[3] IO multiplexin.转载 2021-08-04 09:43:38 · 477 阅读 · 0 评论 -
NIO网络编程模型
客户端package com.company.Selector.Selector1;import java.net.InetSocketAddress;import java.nio.ByteBuffer;import java.nio.channels.SocketChannel;import java.util.Scanner;public class NIOClient { public static void main(String[] args) throws Exce转载 2020-12-09 14:37:51 · 137 阅读 · 0 评论 -
Tomcat 处理请求的流程
1、NioEndPoint接收到请求开启线程执行其内部类SocketProcessor的run(),然后执行doRun方法2、采用责任链模式调用invoke方法 调用类如下图所示: StandardEngineValve AccessLogValve ErrorReportValve StandardHostValve NonLoginAuthenticator StandardContextValve...原创 2020-07-21 14:38:39 · 241 阅读 · 0 评论 -
AES文件加解密的升级版
package com.util;import java.io.File;import java.math.BigInteger;import java.nio.charset.StandardCharsets;import java.security.spec.KeySpec;import java.util.Base64;import java.util.Base64.Decoder;import java.util.Base64.Encoder;import java.util.U.原创 2020-07-14 17:01:00 · 149 阅读 · 0 评论 -
AES文件的加解密
package com.zhao;import java.io.File;import java.nio.charset.StandardCharsets;import java.security.AlgorithmParameters;import java.util.Base64;import java.util.Base64.Decoder;import java.util.Base64.Encoder;import java.util.UUID;import javax.cr..原创 2020-07-13 16:58:04 · 681 阅读 · 0 评论 -
AQS的源码分析
AQS: java中的AbstractQuenedSynchronizer抽象的队列式同步器AQS的两种资源共享方式:1.Exclusive:独占,只有一个线程能执行,如ReentrantLock2.Share:共享,多个线程可以同时执行,如Semaphore、CountDownLatch、ReadWriteLock,CyclicBarrier等AQS原理:AQS维...原创 2020-03-29 22:41:07 · 126 阅读 · 0 评论 -
Java 8 函数式接口
简介:Java 8增加的一个新技术点"函数式接口"放在java.util.function包下,与Lambda表达式密切相关Consumer-消费者提供输入参数,不返回执行结果Consumer<T>提供一个T类型的输入参数,不返回执行结果BiConsumer<T,U>提供两个自定义类型的输入参数,不返回执行结果*Consumer表示接受单个...原创 2020-01-17 11:05:47 · 175 阅读 · 0 评论 -
Java中对象的访问
1. 句柄访问: Java堆中将会划分出一块内存来作为句柄池,reference中存储的就是对象句柄位置,而句柄中包含了对象实例数据与类型数据各自的具体地址信息。2. 直接指针访问: 如果使用直接指针访问,那么Java堆对象的布局中就必须考虑如何放置访问类型数据的相关信息,而reference中存储的直接就是对象地址。...原创 2019-12-05 10:23:57 · 176 阅读 · 0 评论 -
Java中new对象的执行流程
类加载过程(第一次使用该类)Java是使用 双亲委派模型 来进行类的加载的,所以在描述类加载过程前,我们先看一下它的工作过程: 双亲委托模型的工作过程是: 如果一个类加载器(ClassLoader)收到了类加载的请求,它首先不会自己去尝试加载这个类, 而是把这个请求委托给父类加载器去完成,每一个层次的类加载器都是如此,因此所有的加载请求最终都应该传送到顶层的 启动类加载器中...原创 2019-12-05 10:18:59 · 1037 阅读 · 1 评论