NIO
文章平均质量分 91
nio
Binary Oracle
一名热爱开源和技术的Coder , 开源框架spring committer , golang开源网络库netpoll committer; (脱产备战25考研中,停更一年)
展开
-
Netty网络编程第九卷
Netty网络编程第九卷Future 和 Promise关键流程学习Netty 故障定位技巧接收不到消息内存泄漏性能问题Netty生产级的心跳和重连机制经典案例分享本卷不出意外,应该是收尾之卷了,主要再补充一下前面没讲漏掉的知识点Future 和 Promise在 Netty 中,所有的 I/O 操作都是异步的,这意味着任何 I/O 调用都会立即返回,而不是像传统 BIO 那样同步等待操作完成。异步操作会带来一个问题:调用者如何获取异步操作的结果?ChannelFuture 就是为了解决这个原创 2022-01-29 16:35:33 · 906 阅读 · 0 评论 -
Netty网络编程第八卷
Netty网络编程第八卷整体架构ByteBufChannelEventLoop和EventLoopGroupChannelFutureChannelHandler和ChannelPipelineSimpleChannelInboundHandler关于入站和出站处理器是如何识别的问题BootStrap本卷在于对ChannelHandler,ChannelHandlerContext,ChannelPipeline三大组件的详细讲解,力争做到从架构到源码的深入剖析整体架构Netty整体由以下几大原创 2022-01-29 15:40:35 · 1730 阅读 · 0 评论 -
Netty网络编程第七卷
Netty网络编程第七卷Netty的高性能之道传统RPC调用性能差的三宗罪高性能的三个主题Netty的高性能之道详解异步非阻塞通信零拷贝内存池高效的Reactor线程模型无锁化的串行设计理念高效的并发编程高性能的序列化框架灵活的TCP参数配置能力实现心跳机制、断线重连机制为何需要心跳机制?如何用Netty实现心跳机制?使用IdleStateHandler实现心跳(客户端篇)使用IdleStateHandler实现心跳(服务端篇)运行测试如何用Netty实现网络断线重连机制?实现思路代码实现运行测试源码剖析I原创 2022-01-29 11:24:31 · 1429 阅读 · 0 评论 -
Netty网络编程第六卷
Netty网络编程第六卷IO模型互联网服务端处理网络请求的原理“I/O 模型”的基本认识I/O模型1:阻塞式 I/O 模型(blocking I/O)I/O模型2:非阻塞式 I/O 模型(non-blocking I/O)I/O模型3:I/O 复用模型(I/O multiplexing)I/O模型4:信号驱动式 I/O 模型(signal-driven I/O)I/O模型5:异步 I/O 模型(即AIO,全称asynchronous I/O)线程模型【事件驱动模型】线程模型1:传统阻塞 I/O 服务模型线程原创 2022-01-28 21:19:29 · 143 阅读 · 0 评论 -
Netty网络编程第五卷
Netty网络编程第五卷NioEventLoop 剖析1.Selector何时创建2.eventLoop为何有两个selector成员变量3. eventloop的nio线程在何时启动4. 提交普通任务会不会结束select阻塞原本只打算写四卷,结果第四卷结尾只分析到了netty启动初始化部分的源码,特开第五卷将netty剩余重点部分源码分析完毕NioEventLoop 剖析学习NioEventLoop之前,先要搞清楚NioEventLoop的重要组成是:Selector,线程,任务队列;原创 2022-01-28 12:09:13 · 590 阅读 · 6 评论 -
Netty网络编程第四卷
Netty网络编程第四卷四. 优化与源码1. 优化1.1 扩展序列化算法1.2 参数调优1)CONNECT_TIMEOUT_MILLIS2)SO_BACKLOG3)ulimit -n4)TCP_NODELAY5)SO_SNDBUF & SO_RCVBUF6)ALLOCATOR7)RCVBUF_ALLOCATOR1.3 RPC 框架1)准备工作2)服务器 handler3)客户端代码第一版4)客户端 handler 第一版5)客户端代码 第二版6)客户端 handler 第二版思路整理gitee仓库r原创 2022-01-26 15:25:40 · 638 阅读 · 0 评论 -
Netty网络编程第三卷
Netty网络编程第三卷原创 2022-01-24 14:27:25 · 683 阅读 · 0 评论 -
Netty网络编程第二卷
Netty网络编程第二卷二. Netty 入门1. 概述1.1 Netty 是什么?1.2 Netty 的作者1.3 Netty 的地位1.4 Netty 的优势2. Hello World2.1 目标2.2 服务器端2.3 客户端2.4 流程梳理???? 提示3. 组件3.1 EventLoop普通任务和定时任务线程池默认大小???? 优雅关闭演示 NioEventLoop 处理 io 事件细分group组按照工作耗时再进行细分???? handler 执行中如何换人?演示 NioEventLoop 处理原创 2022-01-19 15:20:21 · 895 阅读 · 0 评论 -
Funning things of netty
Funning things of nettyNetty 死锁异常 BlockingOperationExceptionNetty 死锁异常 BlockingOperationException分析 Netty 死锁异常 BlockingOperationException原创 2022-01-18 22:20:25 · 123 阅读 · 0 评论 -
Netty网络编程第一卷
Netty第一章原创 2022-01-17 16:44:35 · 619 阅读 · 0 评论 -
Java NIO
NIO~~第四章 JAVA NIO深入剖析4.1 Java NIO 基本介绍4.2 NIO 和 BIO 的比较4.3 NIO 三大核心原理示意图Buffer缓冲区Channel(通道)Selector选择器4.4 NIO核心一:缓冲区(Buffer)缓冲区(Buffer)第四章 JAVA NIO深入剖析在讲解利用NIO实现通信架构之前,我们需要先来了解一下NIO的基本特点和使用。4.1 Java NIO 基本介绍Java NIO(New IO)也有人称之为 java non-blocking I原创 2022-01-15 23:26:11 · 258 阅读 · 0 评论 -
Funny things of nio
Funny things of nioFileChannel常用API详解,包括FileChannel.open方法获取通道ByteBuffer缓冲区的三种创建方式与解读---重点区分直接和非直接缓冲区Java IO流之DataInputStream和DataOutputStream分析扫描流(Scanner)Runtime.getRuntime().exec踩坑总结(/bin/sh -c、异常流重定向)FileChannel常用API详解,包括FileChannel.open方法获取通道FileCh原创 2022-01-15 21:05:44 · 187 阅读 · 0 评论 -
BIO~~
BIO~~第一章 Java的I/O演进之路2.1 I/O 模型基本说明2.2 I/O模型Java BIOJava NIOJava AIO2.3 BIO、NIO、AIO 适用场景分析第三章 JAVA BIO深入剖析3.1 Java BIO 基本介绍3.2 Java BIO 工作机制3.3 传统的BIO编程实例回顾客户端案例如下服务端案例如下小结3.4 BIO模式下多发和多收消息客户端代码如下服务端代码如下小结3.5 BIO模式下接收多个客户端概述客户端案例代码如下服务端案例代码如下小结3.6 伪异步I/O编原创 2022-01-15 10:47:34 · 327 阅读 · 0 评论 -
JAVA网络编程知识学习
JAVA网络编程知识学习学习目标第一章 网络编程入门1.1软件结构1.2 网络通信协议1.3 协议分类1.4 网络编程三要素协议IP地址IP地址分类常用命令端口号InetAddress类第二章 UDP通信程序2.1 UDP协议概述2.2 UDP通信案例2.2.1 UDP发送端代码实现2.2.2 UDP接收端代码实现第三章 TCP通信程序学习目标 能够辨别UDP和TCP协议特点UDP 无连接,基于数据包,发出去就不管了,性能好,可能丢失数据。TCP有连接,基于通信管道,可靠传输。 能够说出原创 2022-01-14 19:57:40 · 353 阅读 · 0 评论 -
网络编程之正确理解HTTP短连接中的Cookie、Session和Token
网络编程之正确理解HTTP短连接中的Cookie、Session和Token什么是Cookie?Cookie 和 Session关于Session什么是Token?Token的起源Token是什么Token的应用场景Token的安全性Cookie和Session的区别小结Token 和 Session 的区别小结什么是Cookie?Cookie 技术产生源于 HTTP 协议在互联网上的急速发展。随着互联网时代的策马奔腾,带宽等限制不存在了,人们需要更复杂的互联网交互活动,就必须同服务器保持活动状态(简原创 2022-01-12 20:51:32 · 600 阅读 · 0 评论 -
网络编程之闲话HTTP短连接中的Session和Token
网络编程之闲话HTTP短连接中的Session和Token美好的旧时光是时候该Session出场了沉重的负担时间换空间:Token是个不错的方案美好的旧时光我经常想象并怀念三十年前那原始而美好的互联网旧时光, 工作很轻松, 生活很悠闲。上班的时候偶尔有些HTTP的请求发到我这里, 我简单的看一下, 取出相对应的html文档,图片,发回去就可以了, 然后就可以继续喝茶聊天。早期IE浏览器界面我的创造者们对我很好, 他们制定的一个简单HTTP协议, 就是请求加响应, 尤其是我不用记住是谁刚刚发了原创 2022-01-12 20:32:10 · 180 阅读 · 0 评论 -
网络编程之如果这样来理解HTTPS,一篇就够了
网络编程之如果这样来理解HTTPS,一篇就够了前言一个引子如何确定对称加密算法如何对协商过程进行加密协商什么加密算法如何得到公钥?公钥被调包了怎么办?又是一个鸡生蛋蛋生鸡问题?使用第三方机构的公钥解决鸡生蛋蛋生鸡问题数字签名,解决同一机构颁发的不同证书被篡改问题客户端本地怎么验证证书呢?CA如何颁发数字证书给服务器端的?也许我们需要整理一下思路能不能用一句话总结HTTPS?前言可能有初学者会问,即时通讯应用的通信安全,不就是对Socket长连接进行SSL/TLS加密这些知识吗,干吗要理解HTTPS协议转载 2022-01-12 20:22:45 · 376 阅读 · 0 评论 -
网络编程之一文读懂HTTP协议的历史演变和设计思路
网络编程之一文读懂HTTP协议的历史演变和设计思路引言HTTP/0.9HTTP/1.0简介请求格式回应格式Content-Type 字段Accept字段MIME type用在网页中Content-Encoding 字段缺点HTTP/1.1持久连接管道机制Content-Length 字段分块传输编码其他功能缺点SPDY 协议HTTP/2二进制协议多工数据流头信息压缩服务器推送引言HTTP 协议是互联网的基础协议,也是网页开发的必备知识,最新版本 HTTP/2 更是让它成为技术热点。本文介绍 HTTP原创 2022-01-12 19:05:51 · 314 阅读 · 0 评论 -
网络编程之快速搞懂TCP和UDP的区别
网络编程之快速搞懂TCP和UDP的区别引言快速理解TCP/IP协议簇快速理解UDP协议基本介绍面向无连接支持单播、多播、广播面向报文不可靠性头部开销小快速理解TCP协议基本介绍TCP连接过程(3次握手)TCP断开链接(4次挥手)TCP协议要点归纳1)面向连接:2)仅支持单播传输:3)面向字节流:4)可靠传输:5)提供拥塞控制:6)TCP提供全双工通信:总结一下引言网络协议是每个搞网络通信应用开发(比如IM、推送、网关等等)的程序员都必须要掌握的基础知识,TCP/IP协议簇中有两个最具有代表性的传输层协原创 2022-01-12 15:30:23 · 228 阅读 · 0 评论 -
网络编程之快速读懂Http/3协议,一篇就够
网络编程之快速读懂Http/3协议,一篇就够引言HTTP协议的演进史什么是HTTP/3HTTP/3 是如何工作的?TCP可能会间歇性地挂起数据传输TCP不支持流级复用TCP会产生冗余通信为什么HTTP/3很重要?HTTP/3的最佳用例物联网(IoT)大数据Web VRHTTP/3的局限性开始使用HTTP/3QuicheAioquicNeqo引言HTTP3是HTTP协议的最新版本。从诞生之初,HTTP就是交换超文本文档的首选应用层协议。多年来,为了跟上互联网的发展,以及WWW上交换的内容种类增加,HTT原创 2022-01-12 14:47:33 · 385 阅读 · 0 评论 -
网络编程之一文读懂什么是IPv6
网络编程之一文读懂什么是IPv6复习一下什么是IPv4?IPv6又是什么?为什么要使用IPv6?IPv6会带给我们什么?IPv6的优点这么多,为什么之前普及却这么慢?NAT这类技术,让IPv4得以续命升级IPv6涉及运营商的利益IPv6未来会怎样复习一下什么是IPv4?IPv4是Internet Protocol version 4的缩写,中文翻译为互联网通信协议第四版,通常简称为网际协议版本4。IPv4使用32位(4字节)地址,因此地址空间中只有 4,294,967,296(即2^32) 个地址。原创 2022-01-12 14:14:13 · 1667 阅读 · 0 评论 -
网络编程之一泡尿的时间,快速读懂QUIC协议
网络编程之一泡尿的时间,快速读懂QUIC协议TCP协议到底怎么了?QUIC协议登场QUIC协议的目标QUIC协议这么好,可以大规模切换为QUIC吗?QUIC协议实践我想试试QUIC协议,可以怎么做?Chromium:proto-quic:goquic:quic-go:本文小结TCP协议到底怎么了?现时的互联网应用中,Web平台(准确地说是基于HTTP及其延伸协议的客户端/服务器应用)的数据传输都基于 TCP 协议。但TCP 协议在创建连接之前需要进行三次握手,如果需要提高数据交互的安全性,既增加传输原创 2022-01-12 13:53:40 · 1535 阅读 · 0 评论 -
网络编程之通俗讲解,有了IP地址,为何还要用MAC地址?
网络编程之通俗讲解,有了IP地址,为何还要用MAC地址?前言书上说的基本概念:什么是MAC地址?什么是IP地址?为什么要用到MAC地址?IP地址与MAC地址的区别是什么?MAC地址涉及到的安全问题:小知识:ARP原理:最通俗的解释网络洪荒时代如果是多台交换机呢?小结写在最后前言标题虽然是为了解释有了 IP 地址,为什么还要用 MAC 地址,但是本文的重点在于理解为什么要有 IP 这样的东西。本文对读者的定位是知道 MAC 地址是什么,IP 地址是什么。书上说的基本概念:如今的网络是分层来实现的原创 2022-01-12 13:32:12 · 3603 阅读 · 0 评论 -
网络编程之手把手教你写基于TCP的Socket长连接
网络编程之手把手教你写基于TCP的Socket长连接TCP/IP 协议简介IP协议TCP协议Socket 基本用法第一步:创建 ServerSocket 并监听客户连接第二步:使用 Socket 连接服务端第三步:通过 socket.getInputStream()/getOutputStream() 获取输入/输出流进行通信Socket、ServerSocket 傻傻分不清楚Socket “长”连接的实现背景知识实现示例跟 TCP/IP 学协议设计协议版本如何升级?如何发送不定长数据的数据包?上传多个文件原创 2022-01-12 11:31:08 · 1324 阅读 · 0 评论 -
网络编程之深入浅出,全面理解HTTP协议
网络编程之深入浅出,全面理解HTTP协议前言“HTTP之父”其人HTTP概述计算机网络体系结构分层TCP/IP 通信传输流HTTP 请求如下图所示:HTTP 工作过程HTTP 协议基础通过请求和响应的交换达成通信HTTP 是不保存状态的协议使用 Cookie 的状态管理请求 URI 定位资源告知服务器意图的 HTTP 方法(HTTP/1.1)持久连接管线化HTTP 协议报文结构HTTP 报文HTTP 报文结构请求报文结构响应报文结构HTTP 报文首部之请求行、状态行1.请求行2.状态行HTTP 报文首部之首原创 2022-01-11 23:15:59 · 383 阅读 · 0 评论 -
网络编程之史上最通俗的集线器、交换机、路由器功能原理入门
网络编程之史上最通俗的集线器、交换机、路由器功能原理入门帝国时代集线器(Hub)交换机路由器总结帝国时代我相信我们都玩过一款特别火的游戏:帝国时代。小时候想要玩帝国时代,需要到软件城购买盗版光盘安装,大概3块钱一张左右的样子,当时已经觉得很便宜了,谁想到现在有了网络之后是免费。小A是一个帝国时代大神,他打通了游戏的所有关卡,可以一个人单挑8个疯狂的电脑玩家。渐渐地他觉得无聊了,想要找小伙伴一起PK。但是两个电脑需要互联才行,如何实现两台设备的互联呢?小A很聪明,他发明了一个类似于USB接口一样的原创 2022-01-11 16:53:08 · 337 阅读 · 0 评论 -
网络编程之快速理解为什么说UDP有时比TCP更有优势
网络编程之快速理解为什么说UDP有时比TCP更有优势网速的提升给UDP稳定性提供可靠网络保障对比测试结果UDP性能优于TCPTCP设计过于冗余,速度难以进一步提升UDP协议以其简单、传输快的优势,在越来越多场景下取代了TCP网页浏览流媒体实时游戏物联网网速的提升给UDP稳定性提供可靠网络保障CDN服务商Akamai报告从2008年到2015年7年时间,各个国家网络平均速率由1.5Mbps提升为5.1Mbps,网速提升近4倍。网络环境变好,网络传输的延迟、稳定性也随之改善,UDP的丢包率低于5%,如果再原创 2022-01-11 15:20:42 · 265 阅读 · 0 评论 -
网络编程之快速理解TCP和UDP的差异
网络编程之快速理解TCP和UDP的差异建立连接方式的差异TCPUDP数据发送方式的差异数据有序性的差异TCPUDP可靠性的差异TCPUDP使用场景总结TCP协议的3次握手与4次挥手过程详解前言先来认识TCP报文格式3次握手过程详解4次挥手过程详解小结参考文献建立连接方式的差异TCP说到 TCP 建立连接,相信大多数人脑海里肯定可以浮现出一个词,没错就是–“三次握手”。TCP 通过“三次握手”来建立连接,再通过“四次挥手”断开一个连接。在每次挥手中 TCP 做了哪些操作呢?流程如下图所示(TCP的三原创 2022-01-11 14:59:16 · 271 阅读 · 0 评论 -
网络编程之快速理解TCP协议一篇就够
网络编程之快速理解TCP协议一篇就够TCP 协议简介TCP 协议的作用TCP 数据包的大小TCP 数据包的编号(SEQ)TCP 数据包的组装慢启动和 ACK数据包的遗失处理TCP 协议简介TCP 是互联网核心协议之一,本文介绍它的基础知识。TCP 协议的作用互联网由一整套协议构成。TCP 只是其中的一层,有着自己的分工。(图片说明:TCP 是以太网协议和 IP 协议的上层协议,也是应用层协议的下层协议。)最底层的以太网协议(Ethernet)规定了电子信号如何组成数据包(packet),原创 2022-01-11 11:13:00 · 465 阅读 · 0 评论 -
网络编程之快速理解网络通信协议(下篇)
网络编程之快速理解网络通信协议前言用户的上网设置静态IP地址动态IP地址DHCP协议上网设置:小结一个实例:访问网页本机参数DNS协议子网掩码应用层协议TCP协议IP协议以太网协议服务器端响应前言上一篇文章分析了互联网的总体构思,从下至上,每一层协议的设计思想。这是从设计者的角度看问题,今天我想切换到用户的角度,看看用户是如何从上至下,与这些协议互动的。先对前面的内容,做一个小结。我们已经知道,网络通信就是交换数据包。电脑A向电脑B发送一个数据包,后者收到了,回复一个数据包,从而实现两台电脑之间原创 2022-01-11 10:48:49 · 200 阅读 · 0 评论 -
网络编程之快速理解网络通信协议(上篇)
网络编程之快速理解网络通信协议前言正文五层模型层与协议实体层链接层定义以太网协议MAC地址广播网络层网络层的由来IP协议IP数据包ARP协议传输层传输层的由来UDP协议TCP协议应用层前言我们每天使用互联网,你是否想过,它是如何实现的?全世界几十亿台电脑,连接在一起,两两通信。上海的某一块网卡送出信号,洛杉矶的另一块网卡居然就收到了,两者实际上根本不知道对方的物理位置,你不觉得这是很神奇的事情吗?互联网的核心是一系列协议,总称为"互联网协议"(Internet Protocol Suite)。它们原创 2022-01-10 23:23:19 · 286 阅读 · 0 评论 -
NIO--FileLock,Path,Files,AsynchronousFileChannel,Charset
NIOFileLock文件锁分类使用示例获取文件锁方法lock 与 tryLock 的区别:FileLock 两个方法:examplePath创建 Path 实例创建绝对路径创建相对路径Path.normalize()FilesFiles.createDirectory()Files.copy()Files.move()Files.delete()Files.walkFileTree()AsynchronousFileChannel创建 AsynchronousFileChannel通过 Future 读取原创 2021-12-10 20:18:47 · 378 阅读 · 0 评论 -
nio学习之Selector选择器
nio学习之Selector选择器Selector选择器三个相关的类如何创建选择器SelectionKey选择键相关的方法选择器的使用服务器端模板代码selector.select()方法阻塞问题案例服务器端代码客户端代码补充说明select()方法的三个重载:停止选择的方法NIO 编程步骤总结Selector选择器选择器提供一种选择执行已经就绪的任务的能力selector选择器可以让单线程处理多个通道如果程序打开了多个连接通道,每个连接的流量都比较低,可以使用Selector对通道进行管理原创 2021-12-10 19:35:51 · 2652 阅读 · 0 评论 -
NIO基础知识点整理---selector除外
NIO基础知识点整理JVM读取数据模型NIO是什么Bufferbuffer属性Buffer常用APIBuffer的API使用演示缓冲区批量数据传输缓冲区创建的两种方式缓冲区的复制与分隔直接字节缓冲区ChannelScatter与GatherFileChannel1.内存映射文件2.FileChannel的双向传输3.Filechannel读写文件时,缓冲区固定大小4.通道与通道之间的传输5.Gather实现socketChannel和serverSocketChannel服务器端代码---serverSoc原创 2021-12-09 22:48:10 · 343 阅读 · 0 评论 -
NIO学习之ServerSocketChannel和SocketChannel
NIO学习Socket 通道ServerSocketChannelSocketChannel与ServerSocketChannel区别Socket 通道(1)新的 socket 通道类可以运行非阻塞模式并且是可选择的,可以激活大程序(如网络服务器和中间件组件)巨大的可伸缩性和灵活性。本节中我们会看到,再也没有为每个 socket 连接使用一个线程的必要了,也避免了管理大量线程所需的上下文交换开销。借助新的 NIO 类,一个或几个线程就可以管理成百上千的活动 socket 连接了并且只有很少甚至可能原创 2021-12-07 21:28:47 · 3274 阅读 · 0 评论 -
java网络编程系列之JavaIO的“今生”:NIO非阻塞模型
java网络编程系列之JavaIO的“今生”:NIO非阻塞模型BIO中的阻塞非阻塞式NIOChannel与Buffer剖析Buffer向Buffer中写入数据剖析channel几个重要的channel多方法实现本地文件拷贝字节输入流拷贝文件字节缓冲流拷贝文件FileChannel拷贝文件通道间的数据传输完成文件拷贝---transferto,transferfrom文件拷贝的完整源码文件拷贝测试结果剖析Selectorchannel的状态变化在selector上面注册channel使用selector选择c原创 2021-12-07 18:54:56 · 615 阅读 · 0 评论 -
Java网络编程系列之基于BIO的多人聊天室设计与实现
Java网络编程系列之基于BIO的多人聊天室设计与实现BIO模型多人聊天室功能概述多人聊天室设计UML建模之时序图服务端代码实现ChatServerChatHandler客户端代码实现ChatClientUserInputHandler伪异步IO编程模型简析BIO模型传统的BIO模型(同步阻塞IO模型)+线程池(多线程)模式:适合活动连接次数不是特别高。该模式是1:1,即每次连接每个线程。处理步骤:客户端发送请求,接收器Acceptor每接收一个请求,就创建一个新线程,处理完成之后,再通过输出流返原创 2021-12-07 12:55:21 · 722 阅读 · 0 评论 -
IO流知识盲点
IO流知识盲点BufferedReader的readLine()方法读取不到换行和回车时会阻塞BufferedReader的readLine()方法读取不到换行和回车时会阻塞readLine()在没有读取到换行符或回车符时。是不会返回的。而是处于阻塞状态。所以这个while在读取一条消息后。一直在readLine()上阻塞。当客户端发来下一条消息时。会继续下一次循环,等待读取下一条消息1.原来readLine()方法在进行读取一行时,只有遇到回车(\r)或者换行符(\n)才会返回读取结果,这就是“读原创 2021-12-07 09:33:18 · 878 阅读 · 0 评论 -
java网络编程系列之JavaIO的“前世”:BIO阻塞模型
java网络编程系列之JavaIO的“前世”:BIO阻塞模型原创 2021-12-06 21:06:56 · 510 阅读 · 2 评论 -
java网络编程系列之java.io专业术语
java网络编程系列之java.io专业术语网络编程的本质通信的基础java.io大家族java.io里面的字符流java.io里面的字节流java.io里面的装饰器模式Socket概述同步异步阻塞非阻塞网络通信中的线程池java提供的线程池网络编程的本质通信的基础数据源是多样的,例如文件,java可序列化对象,字符串等…java.io大家族java.io里面的字符流更复杂的子类:上面这些类是在基础的四个字符流对象之上,使用装饰器模式,对其做了功能的增强,因此在使用这些类的原创 2021-11-30 09:14:21 · 260 阅读 · 0 评论