首页
学习
活动
专区
圈层
工具
发布
    • 综合排序
    • 最热优先
    • 最新优先
    时间不限
  • 来自专栏熊二哥

    JavaNIO快速入门

    NIO是Jdk中非常重要的一个组成部分,基于它的Netty开源框架可以很方便的开发高性能、高可靠性的网络服务器和客户端程序。本文将就其核心基础类型Channel, Buffer, Selector进行

    2.1K90发布于 2018-01-24
  • 来自专栏嗷呜大嘴狼

    JavaNIO实现按行读取文件操作

    JavaNIO实现按行读取文件操作在Java编程中,文件操作常常是必不可少的步骤。在对文件进行操作时,按行读取文件是一个常见需求。 Java提供了多种方法实现按行读取文件,其中一种方法是使用JavaNIOJavaNIO实现按行读取文件操作JavaNIO是Java New IO的简称,是Java SE 1.4版本引入的一种新的IO API。 相比传统的IO API,JavaNIO提供了更加强大、灵活和高效的IO操作方式。在使用JavaNIO实现按行读取文件操作时,可以使用BufferedReader和CharBuffer两个类。 可以看到,使用JavaNIO实现按行读取文件操作非常简单。通过以上方法,可以在读取文件时节省空间和时间,提高效率。

    1.1K30编辑于 2023-08-07
  • 来自专栏小工匠技术圈

    【Java小工匠】JavaNIO-缓存区基础

    Java小工匠聊网络编程--JavaNIO-缓存区基础 1.1、什么是缓存区?   

    73120发布于 2018-08-10
  • 来自专栏波波烤鸭

    Netty之JavaNIO编程模型介绍02

      NIO 非阻塞 网络编程相关的(Selector、SelectionKey、ServerScoketChannel和SocketChannel) 关系梳理图

    63920发布于 2019-12-31
  • 来自专栏波波烤鸭

    Netty之JavaNIO编程模型介绍01

      Java NIO 全称 java non-blocking IO,是指 JDK 提供的新 API。从 JDK1.4 开始,Java 提供了一系列改进的输入/输出的新特性,被统称为 NIO(即 New IO),是同步非阻塞的

    60650发布于 2019-12-31
  • 来自专栏小工匠技术圈

    【Java小工匠】JavaNIO-基础概念

    Java小工匠聊网络编程--JavaNIO-基础概念 1、同步与异步 同步与异步主要是从消息通知机制角度来说的。同步没有通知,异步有知。

    66130发布于 2018-08-10
  • 来自专栏朱永胜的私房菜

    【面试题精讲】javaNIO的核心组件

    Java NIO(New I/O)是Java提供的一种非阻塞I/O操作的机制,它引入了新的核心组件来替代传统的Java IO API。Java NIO的核心组件包括以下几个部分:

    20940编辑于 2023-10-22
  • 来自专栏后端知识开放麦

    Java网络编程(五):Selector选择器与高并发实现

    无限制无限制数据结构位掩码结构体数组红黑树+链表事件通知返回就绪描述符总数返回就绪描述符总数返回就绪描述符列表内存拷贝每次调用都复制每次调用都复制注册时复制一次跨平台性几乎所有平台几乎所有平台仅Linux1.3JavaNIO 中的多路复用实现JavaNIO通过Selector类提供了对底层操作系统多路复用机制的抽象。 2.Selector的创建和通道注册2.1Selector的创建在JavaNIO中,创建Selector非常简单:收起代码语言:JavaAI代码解释Selectorselector=Selector.open 3.事件类型和SelectionKey机制3.1可选择的事件类型JavaNIO定义了四种标准的可选择事件类型,每种类型由一个常量表示:事件常量值描述适用通道SelectionKey.OP_READ1通道中有数据可读 5.总结Selector作为JavaNIO的核心组件,为构建高性能、可扩展的网络应用提供了强大支持。

    29920编辑于 2025-09-28
  • 来自专栏全栈程序员必看

    Java高并发读写文件[通俗易懂]

    利用JavaNIO实现非阻塞式的读写,通过锁机制完成高并发下的文件的操作。

    2.1K31编辑于 2022-08-30
  • 来自专栏后端知识开放麦

    Java网络编程(四):Buffer缓冲区操作与内存管理

    1Buffer的设计原理和内存模型1.1Buffer到底是什么Buffer就是JavaNIO里的数据容器,专门用来存放各种基本类型的数据。 每种数据类型都有对应的Buffer,比如ByteBuffer、IntBuffer内存灵活:可以用堆内存,也可以用堆外内存状态清晰:读模式和写模式分得很清楚自动跟踪:会自动记录当前操作的位置1.2Buffer家族成员JavaNIO 处理大量传感器数据配置信息传输:用堆Buffer处理小型配置数据文件存储:用直接Buffer或MappedByteBuffer处理大型日志文件实时数据处理:用直接Buffer提高网络通信效率5总结Buffer是JavaNIO 操作变得高效灵活的内存管理:既能用堆内存,也能用系统内存精确的状态控制:通过position、limit、capacity准确控制数据读写类型安全:针对不同数据类型提供专门的Buffer掌握了Buffer,我们就为学习JavaNIO

    31620编辑于 2025-09-27
  • 来自专栏石的三次方

    系统IO模型

    javaNIO的实现 「底层原理」:维护了一个选择器,调用Select选择器寻找数据已经就绪的通道,执行recvfrom进行复制;如果没有通道就绪,select线程阻塞 ?

    64510发布于 2021-01-05
  • 来自专栏Liusy01

    初识Netty

    比如对消息进行编解码,协议不同,编解码步骤也不一样,例如Http和WebSocket 二、用Netty实现简易聊天窗口 在上一篇用JavaNIO写了一个例子,Java原生的NIO开发需要手动判断事件的类型才能做下一步处理 void channelRead(ChannelHandlerContext ctx, Object msg) throws Exception { //将消息转换成ByteBuf,对应于JavaNIO

    52530发布于 2020-09-01
  • 来自专栏后端知识开放麦

    Java网络编程(三):NIO核心组件Channel通道详解

    1Channel接口体系结构1.1Channel到底是什么Channel(通道)是JavaNIO的核心概念,你可以把它理解为数据传输的管道。 1.2Channel的家族关系JavaNIO的Channel接口设计得很有层次感:收起代码语言:TXTAI代码解释Channel(interface)├──ReadableByteChannel(interface 1.3常用的Channel类型JavaNIO提供了好几种Channel,每种都有自己的用途:Channel类型替代了什么主要用来干什么FileChannelFileInputStream/FileOutputStream

    31720编辑于 2025-09-27
  • 来自专栏牛客网

    阿里凉经 简历+1面+2面

    HTTP协议和IP协议 GC是如何做到的,哪些作为GC root JavaNIO和IO区别,如果分别用他们实现QQ有什么区别 HashMap线程安全吗,多线程什么问题 ArrayList多线程什么问题

    1.8K10发布于 2018-09-20
  • 深入理解Netty:从搭建到核心实现原理解析

    传统的阻塞IO(如BIO)在高并发场景下表现迟钝,而JavaNIO虽强大,但API复杂、开发门槛高。 它基于JavaNIO(NewI/O)构建,但抽象了Selector、多路复用等底层细节,提供了一个高层API。

    45300编辑于 2025-11-15
  • 来自专栏Liusy01

    拔刀吧!BIO,NIO

    读取上一段代码,你只会发现,JavaNIO的编码很复杂。相比于JavaNIO,Netty的编码就简单的多,所以之后主要也会记一下Netty的使用。

    1.1K40发布于 2020-09-01
  • 来自专栏用户4352451的专栏

    BIO到NIO的演变过程

    资源: JavaNIO的具体实现 :https://juejin.im/entry/599f971af265da247d728531 本文参考视频:https://www.bilibili.com/video

    69440发布于 2020-08-26
  • 来自专栏全栈程序员必看

    java 文件锁[通俗易懂]

    javaNIO中提供了文件锁的功能,这样当一个线程获取文件锁后,才可以操作文件,其他线程是无法操作文件的,要想进行文件锁定的操作,则要使用FileLock类完成,此类的对象需要依靠FileChannel

    1.3K20编辑于 2022-09-13
  • 来自专栏技术汇总专栏

    Java 实现高效 MP3 音频合并:摆脱 FFmpeg 的纯本地方案

    方案亮点总结特性描述纯Java实现无需任何本地命令或库文件低CPU占用仅使用流式I/O,不进行重复编码☁️可部署云端环境完全JVM内操作,安全可靠格式可扩展支持MP3WAVFLAC混合合并八、进阶方向使用JavaNIO

    21300编辑于 2025-11-01
  • 来自专栏全栈程序员必看

    java.nio.heapbytebuffer_javastringbuffer和string区别

    SocketChannel.read(ByteBuffer dst)和SocketChannel.write(ByteBuffer src)的方法中的参数则都变为了java.nio.ByteBuffer,该类型就是JavaNIO JavaNIO提供了java.nio.ByteOrder枚举类来表示机器的字节序,同时提供了静态方法ByteOrder.nativeOrder()可以获取到当前机器使用的字节序,使用ByteBuffer

    54320编辑于 2022-11-15
领券