SelectableChannel 这个抽象类是所有支持异步IO操作的channel(如DatagramChannel、SocketChannel)的父类。SelectableChannel可以注册到一个或多个Selector上以进行异步IO操作。 SelectableChannel可以是blocking和non-blocking模式(所有channel创建的时候都是blocking模式),只有non-blocking的SelectableChannel才可以参与异步IO操作。 SelectableChannel configureBlocking(boolean block)&nb ...
NIO API主要集中在java.nio和它的subpackages中: java.nio 定义了Buffer及其数据类型相关的子类。其中被java.nio.channels中的类用来进行IO操作的ByteBuffer的作用非常重要。   java.nio.channels 定义了一系列处理IO的Channel接口以及这些接口在文件系统和网络通讯上的实现。通过Selector这个类,还提供了进行异步IO操作的办法。这个包可以说是NIO API的核心。   java.nio.channels.spi 定义了可用来实现channel和selector API的抽 ...
import java.net.*; import java.nio.channels.*; import java.nio.*; import java.io.*; import java.nio.charset.*; public class EchoClient { private SocketChannel socketChannel = null; public EchoClient() throws IOException { socketChannel = SocketChannel.open(); // 打开通道 // 设置连接地址和端口 ...
Excutor 接口 --- 线程池            .execute(Runnable task) --- 执行Runnable类型的任务。 Executors  --- 负责生成各种连接池的实例           .newCachedThreadPool()  --- 有任务时才创建新线程,空闲 ...
2008-05-29

Executors

newCachedThreadPool 建立可以快取的Thread,每个Thread预设可idle 60秒 newFixedThreadPool 包括固定数量的Thread newSingleThreadExecutor 只有一个Thread,循序的执行指定给它的每个任务  newScheduledThreadPool 可排程的Thread  newSingleThreadScheduledExecutor 单一可排程的Thread package onlyfun.caterpi ...
2008-05-27

System.getProperty 常用参数

关键字: java jdk
java.version    Java Runtime Environment version java.vendor    Java Runtime Environment vendor java.vendor.url    Java vendor URL java.home    Java installation directory java.vm.specification.version    Java Virtual Machine specification versi ...
2008-05-27

toString方法

关键字: code 保留
很简单的代码,但是没有规范就写的很乱。 另外很多记录log的时候应该可以采用toString这样的方法来减少冗余。 /** * <p>Returns a String in the format: key[value1, value2, etc].</p> * * @return String representation of this message * @see java.lang.Object#toString() */ public String toString() { St ...
做程序员有一定的时间了,羡慕各位老大们的能力,也在拼命的学习。但是学来学去还是迷茫。虽然自己的卖力完成了工作,自己的卖力得到公司的认同。但是自己心里还是有数的。自己只是一个小鸟,离羽翼丰满还早的很。     总结了,自己这么久的工作经历,也参看了不少同事的经历,才认识到自己不够踏实。现在网络的开放降低了程序员工作的难度,但是也带来了懒惰的情绪和不求甚解的心理。很多东西只是自己闪闪改改放在项目里面就可以了。实际上自己的能力只是个装配工。     技术这东西真是来不得马虎。这两天仔细研究了下主流站点中的页面代码。发现自己的差距不是一般的大 ...