Netty3 源码分析 - ChannelFuture
ChannelFuture抽象的是Channel中异步IO操作的结果。在Netty中,所有的IO操作是异步的,意味着任何IO调用会立刻返回,而不是等到操作真正的执行完成。相反,会返回一个ChannelFuture 对象,在IO完成之后通过其得到结果状态。ChannelFuture 要么完成要么未完成,当IO操作开始执行会创建一个新的...
分类:
Web程序 时间:
2014-09-13 21:33:05
阅读次数:
447
环境: OS: CentOS 6.5 X64 DB: oracle 10.2.0.5故障:之前由于错误激活备库主写导致主备日志同步,重建备库1.关闭备库,删除数据文件及控制文件,redo文件rm -rf *.log rm -rf *.ctl rm -rf *.dbf2.主库备库channel OR....
分类:
其他好文 时间:
2014-09-13 19:56:45
阅读次数:
398
在linux中我们可以很方便的使用system启动子程序,但是system有个不足就是它对子程序的掌控很弱,连返回数值都很难获取。
下面是一段使用execvp来调用子程序的示例代码,关于下面的代码有几点特殊说明:
1) folk(): 会从主程序中复制出一个新的程序,如果folk返回0就是子程序,否则那就是还是当前的程序。
2) wait() : 在主程序中你可以自己决定要等待子程序返回...
分类:
其他好文 时间:
2014-09-12 17:19:23
阅读次数:
254
前面关注的地方都是Netty采用的流水线处理方式的组织方式,ChannelHandler如何管理,通道状态,通道事件等这些上层的架构设计,那么Netty中如何实现诸如套接字绑定,连接,关闭等这些底层的操作呢?不能只顾着套用API写程序,却对细节不求甚解。这里大致追踪下OIO模式下Channel中套接字绑定的实现,(NIO以后分析)其实逻辑都是一样的,只是在线程模型的地方时不同的。
大致过程如下(...
分类:
Web程序 时间:
2014-09-12 17:10:13
阅读次数:
175
记录许总演讲PPT指出的实践:channel– 本质上是一个 MessageQueue– 非常正统的执行体间通讯设施? sync.Mutex/RWMutex/Cond/etc– 不要把 channel 当做万金油,该 Mutex 还是要? 误区– 用 channel 来做互斥 ( 正常应该让 Mut...
分类:
其他好文 时间:
2014-09-12 16:39:53
阅读次数:
181
ChannelPipeline的作用就是组织一系列的ChannelHandlers 为某一个Channel服务,处理各种事件。实现了拦截过滤器模式的高级形式(an advanced form of the Intercepting
Filter pattern),进而有效控制如何处理一个事件以及ChannelHandlers之间如何交互。类型结构图为:
流水线的创建:对于...
分类:
Web程序 时间:
2014-09-12 12:00:13
阅读次数:
310
shell是一个管理进程和运行进程的程序,下面我们就通过模拟一个shell程序这个实例来更好地认识认识在Linux/Unix系统中,进程的创建和结束,以及父子进程之间的一些关系。接下来先贴上源代码的中命令的读取部分:
numargs=0;
while(numargs<MAXARGS){
printf("Arg[%d]?",numargs);
if(fgets(argbuf,A...
分类:
其他好文 时间:
2014-09-11 22:27:32
阅读次数:
792
Bootstrap是通道初始化辅助类 提供了初始化通道或子通道所需要的数据结构,那么ClientBootstrap就是客户端的,而且会执行连接操作。
配置通道,就是把相应的键值对选项传递给底层:
ClientBootstrap b = ...;
// Options for a new channel
b.setOption("remoteAddress", new Inet...
分类:
Web程序 时间:
2014-09-11 19:22:12
阅读次数:
297
wait函数 当进程正常或异常终止时,内核就向其父进程发送SICHLD信号。父进程可以选择忽略该信号(系统默认该动作),或者提供一个该信号发生时即被调用执行的信号处理程序。 调用wait或waitpid的进程时: ·如果其素有子进程都还在运行,则阻塞。 ·如果一个子进程已终止,正等待父进程获...
分类:
其他好文 时间:
2014-09-11 15:03:42
阅读次数:
225
插件主要的方法: ajaxForm ajaxSubmit formToArray formSerialize fieldSerialize fieldValue clearForm clearFields resetForm ? 示例代码: ? 1 2 3 4 5 6 7 // wait for the DOM to be loaded $(document).r...
分类:
Web程序 时间:
2014-09-10 21:13:41
阅读次数:
222