`
agile_boy
  • 浏览: 554424 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

NIO使用简单小记

    博客分类:
  • java
阅读更多
  以下只是在学习NIO的时候,做的一些简单记录:
  • FileChannel的read最好使用position参数,这样channel的current指针不会变化,提高了效率。
  • 刚read完一个ByteBuffer以后,要使用这个buffer,一定要flip一下。
  • ByteBuffer slice以后的新buffer,其array和原来相同,这点要注意。


  以后随着NIO的实践将会不断更新。
2
0
分享到:
评论
1 楼 amozon 2009-01-07  
MINA IoBuffer

相关推荐

    基于nio的简易聊天室

    本项目"基于nio的简易聊天室"旨在通过NIO技术实现一个简单的聊天室服务端和客户端,其特点是有图形用户界面(GUI)供用户交互。 NIO的核心组件包括通道(Channels)、缓冲区(Buffers)和选择器(Selectors)。在这...

    使用多线程的NIO构建简易的多线程java服务器

    以上就是使用NIO和多线程构建简易Java服务器的基本流程。实际应用中,可能还需要处理异常、数据编码解码、心跳检测等复杂问题。你可以参考提供的博客链接(由于当前没有具体链接,你需要自行访问或寻找类似资源)来...

    基于netty的nio使用demo源码

    在"基于netty的nio使用demo源码"中,我们可以期待看到以下几个关键部分: 1. **初始化ServerBootstrap**:Netty服务器的启动过程通常从创建ServerBootstrap实例开始,设置其配置,如BossGroup(接收新连接的线程组...

    基于Groovy的NIO框架,仅供学习Java NIO使用。.zip

    Java NIO(New IO)是Java 1.4版本引入的一个新特性,它提供了一种不同于传统IO(-blocking I/O)的I/O操作方式。传统的IO模型是基于流的,通常涉及阻塞式读写,而NIO则引入了通道(Channels)和缓冲区(Buffers)的...

    使用NIO方式完成简单的通信

    本教程将介绍如何使用NIO来实现简单的通信,包括消息头和消息体的设计。 首先,我们需要了解NIO的基本组件。NIO的核心类包括`Selector`、`Channel`和`Buffer`。`Selector`用于监控多个`Channel`的事件,如读写就绪...

    JAVA nio的一个简单的例子

    在这个“JAVA nio的一个简单的例子”中,我们将探讨如何使用Java NIO进行简单的服务器-客户端通信,并计算字符串的哈希值。 在传统的BIO模型中,每个连接都需要一个线程来处理,当并发连接数量增加时,系统会创建...

    java NIO原理和使用

    下面是一个简单的 Java NIO 示例,展示了如何使用 `FileChannel` 和 `ByteBuffer` 进行文件复制: ```java package nio; import java.io.FileInputStream; import java.io.FileOutputStream; import java.nio....

    Java NIO - The NIO Architecture

    例如,可以通过FileInputStream和FileOutputStream等类获取FileChannel对象,然后使用NIO的API进行操作。这种设计使得开发者可以在不完全放弃传统I/O的基础上逐步迁移到NIO。 #### 四、加密与网络安全 除了核心的I...

    Java NIO原理和使用

    Java NIO非堵塞应用通常适用用在I/O读写等方面,我们知道,系统运行的性能...通过仔细阅读这个例程,相信你已经大致了解NIO的原理和使用方法,下一篇,我们将使用多线程来处理这些数据,再搭建一个自己的Reactor模式。

    java NIO.zip

    例如,可以使用FileChannel的transferTo()和transferFrom()方法在通道之间高效地传输数据,而无需临时创建缓冲区。 5. **多路复用器(Multiplexers)**: 多路复用器是选择器的另一种称呼,它能够监视多个通道上的...

    Java NIO 中文 Java NIO 中文 Java NIO 中文文档

    Java NIO 深入探讨了 1.4 版的 I/O 新特性,并告诉您如何使用这些特性来极大地提升您所写的 Java 代码的执行效率。这本小册子就程序员所面临的有代表性的 I/O 问题作了详尽阐述,并讲解了 如何才能充分利用新的 I/O ...

    JavaNIO chm帮助文档

    Java NIO系列教程(一) Java NIO 概述 Java NIO系列教程(二) Channel Java NIO系列教程(三) Buffer Java NIO系列教程(四) Scatter/Gather Java NIO系列教程(五) 通道之间的数据传输 Java NIO系列教程(六)...

    java nio 实现socket

    在探讨如何使用Java NIO实现Socket通信之前,我们需要先理解NIO(Non-blocking I/O,非阻塞I/O)与传统阻塞I/O之间的区别。 **传统阻塞I/O模型**:在传统的Java IO编程中,当我们调用`read()`或`write()`方法时,...

    Java NIO英文高清原版

    Java NIO,全称为Non-Blocking Input/Output(非阻塞输入/...Netty则是NIO的一个高级封装,它进一步降低了使用NIO的复杂性,提高了开发效率。学习和理解Java NIO以及Netty的使用,对于提升Java网络编程的能力至关重要。

    NIO 入门.chm,NIO 入门.chm

    NIO的使用虽然相对复杂,但它提供了更高效、灵活的I/O操作方式,尤其适用于处理大量并发连接的服务器应用。了解并掌握NIO的这些核心概念和技术,对于提升Java应用的性能和设计高质量的系统架构至关重要。

    基于nio实现的多文件上传源码

    在Java编程领域,NIO(New IO)是一个重要的特性,它是Java 1.4版本引入的,用于替代标准的IO API。NIO提供了一种非阻塞I/O操作的方式,特别适用于处理大量的并发连接,例如在文件传输、网络通信等场景。本主题...

    Socket 之 BIO、NIO、Netty 简单实现

    Socket是网络编程中的基础组件,它提供了进程间通信(IPC)和网络通信的能力。...通过阅读《Socket 之 BIO、NIO、Netty 简单实现》的博客,你可以了解如何在Java中实现这些通信模型,从而提升网络服务的性能和可靠性。

    NIO 简单封装

    这篇名为“NIO简单封装”的博客文章可能涉及以下几个知识点: 1. **通道(Channel)**:NIO的核心组件之一,它是数据传输的通道,如文件通道、套接字通道等,可以读取或写入数据。Java NIO中的通道类包括FileChannel...

    javaNiO.doc

    为了更直观地理解NIO的优势,下面通过一个具体的例子来比较使用传统I/O和NIO读取文件的差异。 ```java // 使用传统I/O读取文件 public void ioRead(String file) throws IOException { FileInputStream in = new ...

    nio demo for nio学习笔记(体系结构以及模块介绍)

    例如,可以通过创建一个简单的服务器,使用ServerSocketChannel监听连接,SocketChannel处理客户端请求,结合Selector实现多路复用。同时,Buffer的使用也非常重要,学会如何正确地读写数据,以及如何有效地管理缓冲...

Global site tag (gtag.js) - Google Analytics