最新文章列表

Java NIO 之 Buffers

你可以把ByteBuffer看着是一段连续内存(实际却不一定),或Byte的数组。Buffer类则提供了很多方法去访问/设置元素。而基于之上的CharBuffer,IntBuffer等则是是数据类型的抽象。   1. Buffer 类图   2. 主要属性 Capacity,能容纳的最多元素个数,构造时固定的; Limit,读写元素的边界,可修改; Position,当前读写位置, ...
jamie.wang 评论(0) 有1356人浏览 2012-07-06 16:14

JAVA NIO 简介

1.   基本 概念 IO 是主存和外部设备 ( 硬盘、终端和网络等 ) 拷贝数据的过程。 IO 是操作系统的底层功能实现,底层通过 I/O 指令进行完成。 所有语言运行时系统提供执行 I/O 较高级别的工具。 (c 的 printf scanf,java 的面向对象封装 ) 2.    Java 标准 io 回顾 Java 标准 IO 
bjtdeyx 评论(0) 有1112人浏览 2012-06-10 11:33

IO和NIO的区别

今天来学习一下io和nio的区别, 1.io是传统的io,即阻塞的io,使用在及时性比较高的场合,如服务端与客户端之间的通讯 2.nio是jdk1.5后出来的新io方式,它是无阻塞的,主要用来及时性不高的场合,如服务端与服务端之间的通讯,nio为什么无阻塞,有几个重要的概念:buffer,selector,chanel,charset 等,buffer:主要是用来缓存
weilingfeng98 评论(0) 有1210人浏览 2012-06-09 00:38

MINA,xSocket同样的性能缺陷及陷阱

MINA,xSocket同样的性能缺陷及陷阱,Grizzly better MINA,Grizzly[grizzly-nio-framework],xSocket都是基于 java nio的 server framework. 这里的性能缺陷的焦点是指当一条channel上的SelectionKey.OP_READ ready时, 1.是由select thread读完数据之后再分发给应用程序的h ...
badboyjaker 评论(0) 有1023人浏览 2012-05-31 09:57

netty的timeout

客户端     package com.mchz.netty.test.client; import java.net.InetSocketAddress; import java.util.concurrent.Executors; import org.jboss.netty.bootstrap.ClientBootstrap; import org.jboss.netty ...
chenhua_1984 评论(0) 有13460人浏览 2012-05-28 14:25

JAVA NIO和MINA发送数据过程解析

NIO发送数据过程: 1 将信道写入操作加锁保证其他线程不对信道写入(文档中称“是如果另一个线程已经在此通道上发起了一个写入操作,则在该操作 ...
duzc2 评论(0) 有4413人浏览 2012-05-11 14:30

练练手,用mina2.0搭建一个nio客户端

练练手,用mina2.0搭建一个nio客户端,连接服务器。 mina2用NioSocketConnector连接,以前mina1的时候叫SocketConnector,现在SocketConnector是一个接口,要注意下区别。 需要的东西,一个handler来处理各种io事件,一个ProtocolCodecFactory来对消息进行编码(ProtocolEncoder)和解码(Protocol ...
wjjxf 评论(0) 有6666人浏览 2012-05-08 16:03

Java NIO 非阻塞服务器端

看到一篇不错的文章,转载标记一下:http://www.ibm.com/developerworks/cn/java/j-javaio/   服务器在合理的时间之内处理大量客户机请求的能力取决于服务器使用 I/O 流的效率。同时为成百上千个客户机提供服务的服务器必须能够并发地使用 I/O 服务。Java 平台直到 JDK 1.4(也就是 Merlin)才支持非阻塞 I/O 调用。用 J ...
nobywhy1 评论(0) 有1423人浏览 2012-05-03 11:04

NIO与I/O的区别

NIO与原有的I/O有同样的作用和目的,是基于原有的I/O的改进和扩展。NIO与原有的I/O不同,他是基于特殊的缓冲块进行的搞笑I/O操作。NIO的缓冲区块与普通的缓冲区不同,他是一块连续的空间,他的内存的分配不再java的 堆栈中,不受java内存的回收的影响;他的实现不是纯java代码,而是本地代码,这样操作系统,可以直接与缓冲区进行交互,java程序只需要完成对缓冲区的读写,而后续操作由操作 ...
haifeng0730 评论(0) 有1199人浏览 2012-05-02 20:09

Java NIO 使用

  1.   基本 概念 IO 是主存和外部设备 ( 硬盘、终端和网络等 ) 拷贝数据的过程。 IO 是操作系统的底层功能实现,底层通过 I/O 指令进行完成。 所有语言运行时系统提供执行 I/O 较高级别的工具。 (c 的 printf scanf,java 的面向对象封装 ) 2.    Java 标准 io 回顾 Java 标准 IO 类库是 io 面向对象的一种抽象。基于本地方 ...
fgh2011 评论(0) 有1103人浏览 2012-05-01 19:55

NIO中缓冲区的API介绍

[转载请注明作者和出处,  如有谬误, 欢迎在评论中指正. ] 在java NIO中, 通道是IO传输发生时数据通过的入口, 而缓冲区是数据的来源或目标.  Buffer是java NIO中定义的所有缓冲区类的基类.   Buffer的属性 1. 容量(capacity) 缓冲区能够容纳的数据元素的最大数量, capacity在创建缓冲区时指定, 之后无法改变. 2. 上界(limit ...
coolxing 评论(0) 有2903人浏览 2012-04-24 16:59

线程池、tomcat NIO环境下的ThreadLocal

在线程池环境下使用ThreadLocal与内存池露     线程池会保留一部分空闲线程仍然存活。如果处理ThreadLocal变量的线程是由线程池维护的,在某些情况下(例如ThreadLocal<T>的T是个大对象),有必要使用ThreadLocal.remove()手工清除ThreadLocal中的内容以释放其占用的内存空间。 Tomcat6使用NIO后对ThreadLocal的影响 ...
jarbee 评论(2) 有4818人浏览 2012-04-12 14:03

Apache Mina简单实例

一.简介 MINA是一个网络应用框架,也可被称之为NIO框架库、客户端/服务器框架库、网络套接字 (socket)库,可以帮助用户开发高性能和高可扩展性的网络应用程序,支持(TCP/IP、UDP/IP协议)等。 二.工作流程 MINA处于中间层,它不关心数据是如何在底层网络进行传输,只负责接受底层数据,将数据通过过滤器过滤并装换成JAVA对象,供应用程序使用,然后在应用程序对数据做过业务处理之 ...
qianhao_1987 评论(0) 有2983人浏览 2012-04-05 22:54

SocketChannel 例子2

Java NIO非堵塞技术实际是采取Reactor模式,或者说是Observer模式为我们监察I/O端口,如果有内容进来,会自动通知我们。 在服务端我们可以使用非阻塞的方式。 下面是一段server端的程序。 client 可以采用阻塞方式来请求。   NIO 有一个主要的类Selector,这个类似一个观察者,只要我们把需要探知的socketchannel告诉Selector,我 ...
youzifei 评论(0) 有1643人浏览 2012-04-04 18:12

BIO和NIO的区别

BIO(Blocking IO)阻塞IO  NIO(Non-Blocking IO)非阻塞IO   共同点:两者都是同步操作。即必须先进行IO操作后才能进行下一步操作。   不同点:BIO多线程对某资源进行IO操作时会出现阻塞,即一个线程进行IO操作完才会通知另外的IO操作线程,必须等待。 NIO多线程对某资源进行IO操作时会把资源先操作至内存缓冲区。然后询问是否IO操作就绪,是则进行I ...
lhc1986 评论(0) 有12701人浏览 2012-04-02 22:16

[转]NIO Client程序片断

The client Before getting started it's worth mentioning that the client implementation is going to end up looking a lot like the server implementation we just finished writing. There's going to be a l ...
jarbee 评论(0) 有983人浏览 2012-03-31 09:18

[转]NIO Server程序片断

Introduction This tutorial is intended to collect together my own experiences using the Java NIO libraries and the dozens of hints, tips, suggestions and caveats that litter the Internet. When I wrote ...
jarbee 评论(0) 有1274人浏览 2012-03-31 09:12

NIO - Channel Foundation

        首先,我们来更近距离地看一下基本的 Channel 接口。Channel 接口的完整源码: package java.nio.channels; public interface Channel { public boolean isOpe ...
zachary.guo 评论(0) 有2046人浏览 2012-03-26 21:26

Java NIO连接socket

NIO连接socket 一个是服务器端,一个是客户端,都是用NIO连接的,代码如下 package testnio; import java.net.InetSocketAddress; import java.nio.ByteBuffer; import java.nio.channels.SelectionKey; import java.nio.channels.Selector; ...
liyaxi 评论(0) 有1605人浏览 2012-03-24 02:18

最近博客热门TAG

Java(141747) C(73651) C++(68608) SQL(64571) C#(59609) XML(59133) HTML(59043) JavaScript(54918) .net(54785) Web(54513) 工作(54116) Linux(50906) Oracle(49876) 应用服务器(43288) Spring(40812) 编程(39454) Windows(39381) JSP(37542) MySQL(37268) 数据结构(36423)

博客人气排行榜

    博客电子书下载排行

      >>浏览更多下载

      相关资讯

      相关讨论

      Global site tag (gtag.js) - Google Analytics