06 2016 档案
摘要:Java NIO 中的 Buffer 用于和 NIO 通道进行交互。如你所知,数据是从通道读入缓冲区,从缓冲区写入到通道中的。 缓冲区本质上是一块可以写入数据,然后可以从中读取数据的内存。这块内存被包装成 NIO Buffer 对象,并提供了一组方法,用来方便的访问该块内存。 下面是 NIO Buf
阅读全文
摘要:github forck一个分之后,如果过一段时间就会和主分支的差异比较大。 这样提交pr的时候 就会冲突,这个时候我们就需要和主分支同步代码 git remote add upstream git@github.com:coreos/etcd.git git fetch upstreamgit m
阅读全文
摘要:Selector(选择器)是 Java NIO 中能够检测一到多个 NIO 通道,并能够知晓通道是否为诸如读写事件做好准备的组件。这样,一个单独的线程可以管理多个 channel,从而管理多个网络连接。 下面是本文所涉及到的主题列表: 为什么使用 Selector? 仅用单个线程来处理多个 Chan
阅读全文
摘要:It is great to be able to build small utilities on top of an excellent RDBMS. Thank you MySQL. This is a small but complex utility to perform online s
阅读全文
摘要:我应该何时使用 IO,何时使用 NIO 呢?在本文中,我会尽量清晰地解析 Java NIO 和 IO 的差异、它们的使用场景,以及它们如何影响您的代码设计。 Java NIO 和 IO 的主要区别 下表总结了 Java NIO 和 IO 之间的主要差别,我会更详细地描述表中每部分的差异。 面向流与面
阅读全文
摘要:Java NIO 中的 ServerSocketChannel 是一个可以监听新进来的 TCP 连接的通道, 就像标准 IO 中的 ServerSocket 一样。ServerSocketChannel 类在 java.nio.channels 包中。 这里有个例子: 打开 ServerSocket
阅读全文
摘要:Java NIO 中的 SocketChannel 是一个连接到 TCP 网络套接字的通道。可以通过以下 2 种方式创建 SocketChannel: 打开 SocketChannel 下面是 SocketChannel 的打开方式: 关闭 SocketChannel 当用完 SocketChann
阅读全文
摘要:现在项目中用到需要定时去检查文件是否更新的功能。timer正好用于此处。 用法很简单,new一个timer,然后写一个timertask的子类即可。 这样,就可以在1秒钟之后开始执行mytask,每两秒钟执行一次。 当然,timer的功能也可以通过自己构造线程,然后在线程中用sleep来模拟停止一段
阅读全文
摘要:根据需要创建新线程的对象。使用线程工厂就无需再手工编写对 new Thread 的调用了,从而允许应用程序使用特殊的线程子类、属性等等。 JDK中的介绍: An object that creates new threads on demand. Using thread factories rem
阅读全文
摘要:一、简介 线程池类为 java.util.concurrent.ThreadPoolExecutor,常用构造方法为: corePoolSize: 线程池维护线程的最少数量 maximumPoolSize:线程池维护线程的最大数量 keepAliveTime: 线程池维护线程所允许的空闲时间 uni
阅读全文