上一页 1 2 3 4 5 6 7 8 ··· 12 下一页
要学的东西,还很多,例如:1)详细写过程write2)bytebuffer设计3)upstream/downstream各种设计与handler维护4)各种协议,大架子喘口气,我们不可能一口气吃下个胖子哈,那么好,我们书接上回,谈谈这详细的写过程。在写的时候,channel的getInterestOps(),会根据目前的“写情况”来自动更新OP_WRITE相关的interestops,换句话说,OP_WRITE完全由netty自己get/set,业务层无法显式set的。前面刚提到,根据目前的“写情况”,那究竟如何标识写情况呢,我们不得不拎出这两个变量来打量一番。关于highwatermark和 Read More
posted @ 2012-11-22 21:53 技术草根女 Views(564) Comments(0) Diggs(0) Edit
首先,我们得知道常用的svn命令有哪些:svn co 拉代码到本地svn add 将新文件/目录添加到svn中svn delete 将文件/目录从svn中删除svn up 更新代码到本地svn ci 本地代码提交下有详细引用内容Java中如何调用1. 组装好命令2. 命令执行器(支持远程调用)3. 同步执行命令,取回结果下面来具体说说:1. 组装命令例如,代码提交的命令,svn ci E:/SofaRouter/puretest/config/ -m "xxx" --username=test --password=test2. 执行命令 MyResult result = Read More
posted @ 2012-11-22 13:29 技术草根女 Views(9113) Comments(0) Diggs(0) Edit
这节课,我想要搞搞清楚,netty里底层read/write究竟是怎样一个模式。read, how, from where, to wherewrite, how, from where, to whereSelectionKeyOP_READ=1OP_WRITE=4OP_CONNECT=8OP_ACCEPT=16Read1. 如果channel有数据可读,那么相应的selectionKey的OP_READ将被置位。2. 准备好buffer(从recvBufferPool中获取预估大小的缓存区),以备读出数据后放置;3. 尝试着从channel中读取数据到buffer中,Reads a seq Read More
posted @ 2012-11-21 22:00 技术草根女 Views(873) Comments(0) Diggs(0) Edit
迷你版的小netty,魂在了:http://rox-xmlrpc.sourceforge.net/niotut/ Read More
posted @ 2012-11-21 20:36 技术草根女 Views(339) Comments(0) Diggs(0) Edit
demo示例ClientServerNio模型model-1model-2model-3model-nettyBossWorkerChannel设计场景connect->read->write->closeinterestOps, selectionKeyOP_READ可读可写. neither read nor write operation has been suspended.OP_WRITE不可读不可写. both has been suspended.OP_READ_WRITE 可读不可写. write operation has been suspended.OP Read More
posted @ 2012-11-21 20:34 技术草根女 Views(1345) Comments(0) Diggs(1) Edit
netty channel nio socket,呵呵,接下来说的就是它们几个。DefaultNioSocketChannelConfig.java主要属性:writebuffer的两个游标阈值:high watermark, low watermark,一般前者为后者的一半writeSpinCount,predictor, 预测channel的receive buffer大小。有adaptive和fixed两种实现。1)AdaptiveReceiveBufferSizePredictor, 根据上次读操作的具体情况来"自适应的"调节下次recive buffer大小,预估 Read More
posted @ 2012-11-20 23:10 技术草根女 Views(957) Comments(0) Diggs(0) Edit
AtomicReferenceThe additional power provided by AtomicReference is the compareAndSet() method and friends. If you do not need those methods, a volatile reference provides the same semantics as AtomicReference.set() and .get().AtomicReference vs. Volatile目前来看,atomic比volatile多了个原子性。当多线程一起访问的时候,也可以达到原子 Read More
posted @ 2012-09-27 21:53 技术草根女 Views(787) Comments(0) Diggs(0) Edit
volatileatomicsynchronized volatile【小例子】volatile int n = 0;现象:如果100个线程都执行以下操作,那么原则上我们猜想,结果应该是1000。但现实很残忍,并非如此,很多时候<1000。for(int i=0; i<10; i++){ n++;}解释:声明为volatile的简单变量如果当前值由该变量以前的值相关,那么volatile关键字不起作用,也就是说如下的表达式都不是原子操作:n = n + 1; n++; 如果要想使这种情况变成原子操作,需要使用synchronized关键字【volatile是什么】volatile用 Read More
posted @ 2012-09-27 20:44 技术草根女 Views(940) Comments(0) Diggs(0) Edit
1. seconds2. minutes3. hours4. day-of-month5. month6. day-of-week7. year(optional field)每个子表达式,可表达范围或列表。0 0 12 ? * WED*表示:该域中每一个可能的值/表示:表示值的增量,例如在秒域中放入0/15,表示从0开始,以15s为增量,效果与0,15,30,45相同。?表示:只在day-of-month, day-of-week域中使用,表示“不指定值”。L表示:只在day-of-month, day-of-week域中使用,表示last。深入一点,在day-of-week中使用6L/FR Read More
posted @ 2012-09-26 20:24 技术草根女 Views(476) Comments(0) Diggs(0) Edit
呵呵,不着急,先一下“是什么”,再说一下“怎么用”。 是什么jps查看所有的jvm进程,包括进程ID,进程启动的路径等等。我自己也用PS,即:ps -ef | grep javajstack观察jvm中当前所有线程的运行情况和线程当前状态。系统崩溃了?如果java程序崩溃生成core文件,jstack工具可以用来获得core文件的java stack和native stack的信息,从而可以轻松地知道java程序是如何崩溃和在程序何处发生问题。系统hung住了?jstack工具还可以附属到正在运行的java程序中,看到当时运行的java程序的java stack和native stack的信息 Read More
posted @ 2012-08-20 12:22 技术草根女 Views(16143) Comments(0) Diggs(1) Edit
上一页 1 2 3 4 5 6 7 8 ··· 12 下一页