IO流
文章平均质量分 62
只因妮泰妹
一只小菜坤,记录自己的学习笔记,欢迎大佬们指正错误
展开
-
基于 BIO 形式下的文件上传
可以实现接收客户端的任意类型文件,并保存到服务器端磁盘。实现客户端上传任意类型的文件数据给服务端保存起来。原创 2022-11-25 16:58:04 · 325 阅读 · 0 评论 -
伪异步IO编程
JDK的线程池维护一个消息队列和N个活跃的线程,对消息队列中Socket任务进行处理,由于线程池可以设置消息队列的大小和最大线程数,因此,它的资源占用是可控的,无论多少个客户端并发访问,都不会导致资源的耗尽和宕机。在多客户端通讯模式中,当客户端的并发访问增加时,服务端将呈现1:1的线程开销,访问量越大,系统将发生线程栈溢出,线程创建失败,最终导致进程宕机或者僵死,从而不能对外提供服务。原创 2022-11-25 10:45:58 · 82 阅读 · 0 评论 -
实现BIO多客户端通讯模式
如果服务端需要处理很多个客户端的消息通信请求应该如何处理呢,此时我们就需要在服务端引入线程了,也就是说客户端每发起一个请求,服务端就创建一个新的线程来处理这个客户端的请求,这样就实现了一个客户端一个线程的模型。创建多个客户端向服务端发送请求,服务端都成功将其打印。原创 2022-11-18 16:21:21 · 277 阅读 · 0 评论 -
Java BIO基本介绍
Java BIO就是传统的java io 编程,其相关的类和接口在java.ioBlo(blockingl/O):同步阻塞,服务器实现模式为一个连接一个线程,即客户端有连接请求时服务器端就需要启动一个线程进行处理,如果这个连接不做任何事情会造成不必要的线程开销,可以通过线程池机制改善(实现多个客户连接服务器)🔔在以上通信中,服务端会一致等待客户端的消息,如果客户端没有进行消息的发送,服务端将一直进入阻塞状态。原创 2022-11-17 22:19:40 · 594 阅读 · 0 评论 -
I/O模型简介之BIO、NIO、AIO
服务器实现模式为一个线程处理多个请求(连接),即客户端发送的连接请求都会注册到多路复用器上,多路复用器轮询到连接有I/O请求就进行处理,当一个通道没有数据的时候,服务器就无需在该通道浪费线程开销。服务器实现模式为一个有效请求一个线程,客户端的I/O请求都是由OS先完成了再通知服务器应用去启动线程进行处理,一般适用于连接数较多且连接时间较长的应用。👉BIO是单向的,要么是输入流要么是输出流,NIO是双向的,可以从channel往buffer读写数据,同时buffer也可以向channel读写数据。原创 2022-11-17 20:42:48 · 186 阅读 · 0 评论 -
Java IO流 实现文件复制
java io流 实现文件操作原创 2022-10-21 23:03:40 · 2599 阅读 · 3 评论 -
java FileInputStream 之 read()函数
java FileInputStream 之 read函数原创 2022-10-20 22:06:34 · 322 阅读 · 0 评论 -
Java IO流
初识IO流字节流和字符流的区别字节流和字符流的相应操作转载 2022-10-19 22:51:52 · 105 阅读 · 0 评论