`
iunknown
  • 浏览: 405272 次
社区版块
存档分类
最新评论
文章列表
之前用 state pattern 实现过 xml 的解释器(spxml),现在用同样的思路来试试实现 json 的解释器。 state pattern 用于这两个解释器的实现的确非常合适,可以有效地降低代码的复杂度。 在 http://json.org 上有 json 完整的语法图,看起来非常简单。 在做调研的时候,发现 json 已经成为一个 rfc 了 http://www.ietf.org/rfc/rfc4627.txt 实现的结果是又在 googlecode 上增加了一个项目 http://code.google.com/p/spjson/ http://spjson.google ...
打算把 Windows 的 SSPI 集成到 SPServer/IOCP 的框架中,这样可以减少 SPServer 对第三方库的依赖。但是看了一下 SSPI 之后,望而生畏啊。对比 openssl ,SSPI 接口相当于与其中的 BIO 接口,并且比 BIO 接口更难用。找了几个例子来看,每个的代码基本上都是又长又难看,太多的错误判断了。最后还是直接在 windows 上用 openssl 算了。看了 openssl 在 windows 下的编译步骤,决定都是放弃自己编译的想法。在网上找了个已经编译好的版本,然后把原来在 linux 下的 openssl 插件在 vc 下编译,经过一轮调试,看起 ...
原文:http://ks.cn.yahoo.com/question/1308031705287.html 在此之前,参考了很多关于R6034错误的网页,主要是考虑manifest: (1)磁盘系统是fat32格式的:FAT32的时间精度不够,所以linker在生成文件的时候会出错,如果是ntfs的就没有问题.VS2005 ...
http://www.sagemath.org:9001/GlennTarbox/DsageNg There are 2 reasons for threading at high levels: 1. Blocking on code which you can't change 2. Can't figure out how to make it asynchronous
http://krow.livejournal.com/2008/01/01/ MySQL 6.0, Libevent Jan. 1st, 2008 | 11:30 am Currently in the 6.0 tree we have support for Libevent. This is one of those things I've been wanting to see us do for years and it was finally completed a few weeks ago by Damien Katz (aka CouchDB) with some help ...
集成 IOCP 到 Libevent 完整的代码在 http://spserver.googlecode.com/files/libevent-1.4.4-iocp-3.zip 2008.08.23 http://spserver.googlecode.com/files/libevent-1.4.5-stable-iocp-2.zip 增加了 non-blocking connect 的支持。 IOCP 是真正的异步 IO ,Libevent 提供的是一个 event-driven 的接口。 异步 IO 和 event-driven 的区别: 1.对于 event-driven,需要等 ...
原文 It may be possible to use IOCompletionPorts on Windows to implement apr_pollset_*.  IOCPs aare very scalable but moving to IOCPs will require a complete rewrite of the apr_socket implementation on Windows. And there is the small matter of a simple technical issue that needs to be investigated.. ...
IOCP 对于高并发的应用程序提供了良好的支持,使得开发高并发的应用程序的难度降低了很多。 IOCP 作为系统底层的 API ,保持了尽可能高的灵活性,对于很多复杂的情况,IOCP 也一样适用。 这种灵活性是一种双刃剑,对于复杂的 ...
mysql 6 中关于网络层 IO 的设计,在下面这个链接中讲了大体的思路 http://forge.mysql.com/worklog/task.php?id=441 首先提到了目前的设计,one_thread_per_connect 模型。 引用 ...... - A new thread is created to serve this socket. (Actually, with a thread cache, it might reuse an existing thtread.) ...... In short: The above design does not scale ...
在参考了一些资料,并且尝试了几次之后,也逐渐想到了一个用来安全释放 IOCP 资源的办法。 http://groups.google.com/group/dev4server/browse_thread/thread/29a91064931a628e 接着发现有人已经把这种方案描述的很清楚了 http://blog.codingnow.com/2007/07/robust.html#comment-12142 对大家的讨论不置可否,但是使用ID代替指针确实在某些方面是有益处的。 而某些时候我们无法使用智能指针。举个例子,完成端口中 GetQueuedCompletionStatus( ...
windows 高级编程指南 第三版 Page 601 IIS 使用了一个相当复杂的算法来管理它的线程池。IIS 创建的最大线程数目是动态的。当IIS初始化时,对每个 CPU ,它最多允许创建 10 个线程。不过,根据客户请求,这一最大值可能会增加。IIS 设的最大值是计算机上的 RAM 的 M 字节数的两倍。 当一个客户请求要执行一个 ISAPI DLL 中的代码时,IIS 增大了池中的最大线程数目。当 ISAPI 函数返回时,IIS 减少了该值。这是因为 IIS 不知道 ISAPI DLL 函数要做什么事情。如果函数进入了一个无限循环,IIS 就失去了一个线程。所以 IIS 就增大了池中 ...
作者:吴晓波     2004年8月9日,陈春先去世,两天前,他刚刚过了70岁的生日。即便是中关村的人,也没有几个还记得他的名字了,“遗忘”是这部中国企业史最重要的特征之一。     1980年10月,中国最顶尖的核聚变专家、46岁的中国科学院物理所研究员陈春先从美国考察回来,这已经是他两年里第三次访问美国了,这几次出国让他印象最深的倒还不是美国同行的学术进步,而是那个国家在技术产业化上的扩散能力。他每次都会去两个地方,一是西部的硅谷,还有就是东部的波士顿“128号公路”。走在那两条房屋低矮、丛木葱绿的狭长地带,他突然萌生了一股从来没有过的激情。陈春先是当时国内最有前途的新生代科学家,在19 ...
http://iask.sina.com.cn/b/7837434.html?from=related GBK中的“K”是扩展的意思,而GB2312中的“2312”以及GB18030中的“18030”是国家标准的代号,BIG5是港澳台地区的编码。 下面详细介绍一下字库情况,你就可看出其区别: (一)GB2312-80字库 ...
http://weblogs.java.net/blog/jitu/archive/2007/10/index.html New project mimepull allows applications to access MIME attachments in a streaming fashion.  Often times,  larger MIME messages cannot be loaded into memory. Hence the whole message or attachment parts are written to a file system and acce ...
上周日开始玩,选李华梅,用来半天时间度过了没有地方舰队的艰难时刻。 今天接着玩,凭借地方舰队带来的金钱,组织了 3 支铁甲船舰队,一路为主帅护航。 基本上都是以 迅雷不及掩耳盗铃之势 灭掉了对手,在各个海域做到了势力第一。 印度洋,地中海,北海,非洲,东亚,新大陆,东南亚 逐个找到了证。 其中印度洋,地中海,北海都很简单。后面的四个就比较麻烦了。 关键是很多同业公会交代的任务都忘记了。 在新大陆转了很多圈都没见到 幽灵船 ,在快失去耐心的时候,终于出现了。 在东南亚,鲨鱼的幼子原来在 伊斯坦堡 的时候已经用了,当时也没留意。 结果在东南亚不断转圈,也打了几次鲨鱼,但就是拿不到鲨鱼幼子。 后来 ...
Global site tag (gtag.js) - Google Analytics