摘要: JDK 7 引入了 Asynchronous I/O,即 AIO。在进行 I/O 编程中,常用到两种模式:Reactor和 Proactor。Java 的 NIO 就是 Reactor,当有事件触发时,服务器端得到通知,进行相应的处理。AIO 即 NIO2.0,叫做异步不阻塞的 IO。AIO 引入异 阅读全文
posted @ 2020-01-03 22:03 Qmillet 阅读(146) 评论(0) 推荐(0)
摘要: 一、零拷贝 1.介绍 零拷贝描述的是CPU不执行拷贝数据从一个存储区域到另一个存储区域的任务,这通常用于通过网络传输一个文件时以减少CPU周期和内存带宽。 优点: 减少甚至完全避免不必要的CPU拷贝,从而让CPU解脱出来去执行其他的任务 减少内存带宽的占用 通常零拷贝技术还能够减少用户空间和操作系统 阅读全文
posted @ 2020-01-03 21:50 Qmillet 阅读(542) 评论(0) 推荐(0)
摘要: 一、Selector 1. 基本介绍 ① Java 的 NIO,用非阻塞的 IO 方式。可以用一个线程,处理多个的客户端连接,就会使用到Selector(选择器)② Selector 能够检测多个注册的通道上是否有事件发生(注意:多个Channel以事件的方式可以注册到同一个Selector),如果 阅读全文
posted @ 2020-01-03 20:49 Qmillet 阅读(396) 评论(0) 推荐(0)
摘要: 本章内容: 1.Buffer 2.Channel 一、Buffer 1.基本介绍 缓冲区(Buffer):缓冲区本质上是一个可以读写数据的内存块,可以理解成是一个容器对象(含数组),该对象提供了一组方法,可以更轻松地使用内存块,缓冲区对象内置了一些机制,能够跟踪和记录缓冲区的状态变化情况。Chann 阅读全文
posted @ 2020-01-03 19:33 Qmillet 阅读(362) 评论(0) 推荐(0)
摘要: 46.全排列 给定一个没有重复数字的序列,返回其所有可能的全排列。 示例:输入: [1,2,3]输出:[ [1,2,3], [1,3,2] [2,1,3], [2,3,1], [3,1,2], [3,2,1]] 1 class Solution { 2 3 List<List<Integer>> r 阅读全文
posted @ 2020-01-03 09:44 Qmillet 阅读(242) 评论(0) 推荐(0)