`
文章列表
    ACE_Reactor在windows上默认不是使用ACE_Select_Reactor,而是ACE_WFMO_Reactor(封装了WaitForMultipleObjects和WSAEventSelect)。如果想选择ACE_Select_Reactor,如: ACE_Select_Reactor select_reactor; ACE_Reactor reactor (&select_reactor);     那么VC需要启用/GR编译选项,具体做法就是在项目属性c/c++的语言一栏中启用RTTI信息即可。在选择了ACE_Select_Reactor之后,启动进程后在 ...
相对完整的修改版本   1 /************************************************************************    2 * @file: echo.cpp                                                       3 * @author: dennis   4 * @revise: dennis <killme2008@gmail.com> http://www.blogjava.net/killme2008   5 *          相对完整的echo serv ...
过去推荐过两篇blog《Java NIO类库Selector机制解析》(上 ,下 ),感叹java为了跨平台似乎“很傻很天真”。最近学习使用ACE,才知道这个解决办法倒不是java开创的,ACE也是这样搞的。java nio中Selector的wakeup方法,类似于ACE_Select_Reactor的notify机制,可以从非select调用的线程去唤醒阻塞在select调用上的select线程,当然ACE_Select_Reactor的notify强大多了,可以实现event handler的无限扩容。ACE_Select_Reactor的notify的实现是通过ACE_Pipe,在ACE ...
这几天没事做的时候都会上projecteuler.net上面去做题,其中14题是这样的: he following iterative sequence is defined for the set of positive integers: n n /2 (n is even) n 3n + 1 (n is odd) Using the rule above and starting with 13, we generate the following sequence: 13 40 20 10 5 16 8 4 2 1 It can
项目名称:yanf4j (yet another nio framework for java) 项目网址:http://code.google.com/p/yanf4j/ 下载网址:http://code.google.com/p/yanf4j/downloads/list 0.41 beta版 的主要修改: 1、引入流量控制,通过Controller的setReceivePacketRate方法设置接收消息频率(单位 个/秒),当超过设定值时,yanf4j将放缓接收数据直到实时统计的接收频率降低。此功能默认未开启。 2、改善了数据统计,数据统计不再是从服务器启动时间点到当前的时间段内的平 ...
在cpp中为了可移植性,string的长度是string::size_type,突然就想知道java允许的最大字符串长度为多少。看String的源码: public   final   class  String    110         implements  java.io.Serializable, Comparable < String > , CharSequence    111 ...
yanf4j 简介,请看这里 。     这里俺要介绍下用yanf4j写个最简单的聊天室,可以直接telnet上去聊天。请先下载common-logging 和yanf4j-0.40-stable-bin.tar.gz 。     聊天室嘛,肯定要维护一个聊天者聊表: List < Session >  sessionList  = ...
    首先你的机器上肯定要安装emacs啦,此步略过不表。  1、从 http://rubyforge.org/projects/emacs-rails 下载最新emacs-rails,解压文件到~/.emacs.d/rails 目录  2、根据README,你需要下载三个依赖库: cd ~/.emacs.d/rails wget http://www.kazmier.com/computer/snippet.el wget http://www.webweavertech.com/ovidiu/emacs/find-recursive.txt mv find-recursive.txt fi ...
    一开始尝试使用     sudo apt-get install libopenssl-ruby1.8     安装是安装成功了,但是仍然提示找不到openssl。还是决定从源码安装,首先确保ubuntu安装了openssl:     sudo apt-get install openssl     sudo apt-get install libssl-dev     sudo apt-get install libssl0.9.8         然后进入ruby源码目录下的/ext/openssl     cd RUBY_SOURCE/ext/openssl     ruby e ...
    本节开始进入第4章最后一部分——逻辑程序设计。scheme将实现一种查询语言,非常类似prolog。由于解释器的实现在后面,还未读到,前面的习题我都将用prolog做测试,当然也给出scheme版本的解答,待以后测试。     首先给出依照书中所述写出的prolog事实库: address('BitDiddle Ben','Slumerville','Ridge Road',10). address('Hacker Alyssa P','Cambridge','Mass Ave',78). address('Fect Cy D','Cambridge',
    在第二个分析求值器的基础上实现了完整的amb求值器,在drscheme选择R5RS标准下测试通过。注意,在show details面板里将disallow redefinition of initial bindings选项去掉,允许重定义过程。给出完整代码: (define apply-in-underlying-scheme apply) (define (amb-eval exp env succeed fail)   ((analyze exp) env succeed fail)) (define (analyze exp)   (cond ((self-evaluating? ...

终于跑了一万米

    跑步快3个月了,其实并没有天天跑,基本每周都休息两三天。今天终于挑战了下一万米,开跑前两个小时吞了点面包,喝了两碗淡盐水。最后一千米膝盖开始有点僵,最后估计花了50多分钟快一小时,仅作纪念。长跑准备一星期来这么一次,平时还是四五千米为好。
    说谎者谜题是sicp4.3.2小节的一道题目,题目本身不难: 五个女生参加一个考试,她们的家长对考试结果过分关注。为此她们约定,在给家里写信谈到考试的时候,每个姑娘都要写一句真话和一句假话。下面是从她们的信里摘抄出来的句子: Betty : kitty考第二,我只考了第三 Ethel : 你们应该很高兴听到我考了第一,joan第二 joan :   我考第三,可怜的Ethel垫底 kitty:  我第二,marry只考了第四 marry: 我是第四,Betty的成绩最高。 这五个姑娘的实际排名是什么?     Ruby本来就有call/cc,因此也可以实现amb操作符,网上已经有一个实 ...
    JRuby的内存占用是比较高的,毕竟需要启动一个JVM以及构建抽象语法树等,一般同一个脚本的内存占用都是CRuby的几十倍甚至上百倍。记的Infoq上有过一个新闻是说sun跟东京某大学合作研究Ruby和JRuby的MVM,可以在几个VM之间共享解释器,可以在启动多个VM的时候大大降低内存占用。不过这个项目暂时没有什么消息,要想在实际中应用更是没影的事情。有无其他解决办法?今天看到IBM Developer的一篇文章,原来IBM JRE for the Java platform SE 5早就引入了类共享的特性,也就是说允许通过缓存在 JVM 之间共享类来减少内存占用和重复加载类的开销。最 ...
4.38,谜题就有翻译错误,问题更是错的离谱。原题是这样的: Baker, Cooper, Fletcher, Miller, and Smith live on different floors of an apartment house that contains only five floors. Baker does not live on the top floor. Cooper does not live on the bottom floor. Fletcher does not live on either the top or the bottom floor. Mille ...
Global site tag (gtag.js) - Google Analytics