摘要: Overviewnet.RPC并不是一个复杂的包,并且其示例代码已经将基本用法展示得非常清楚。但是在阅读RPC的文档,对其所有的功能一一探究时却产生了不少疑惑。比如,ServeCodec, ServeRequest, ServeConn的区别等。单看文档是无法把这些疑惑搞清楚的,只有深入代码才能弄明白它们之间的区别。ServeCodec和ServeConn先看一下两个函数的声明:func ServeConn(conn io.ReadWriteCloser)func ServeCodec(codec ServerCodec)​从调用关系来看ServeConn最终会调用ServeCodec来解析从 阅读全文
posted @ 2013-12-01 22:21 hugh lo 阅读(745) 评论(0) 推荐(0) 编辑
摘要: Guest Post - The Expression Evaluator - Visual C++ Team Blog - Site Home - MSDN Blogs 阅读全文
posted @ 2013-08-07 15:20 hugh lo 阅读(146) 评论(0) 推荐(0) 编辑
摘要: 今天在看文章的时候遇到了multiple dispatch这个术语。看看了wiki,写得云里雾里。最后搜了搜资料,基本上搞清楚了。multiple dispatch的混淆之处在于其和object system结合在一起。当然wiki上写得很清楚:“afunctionormethodcan be dynamically dispatched based on the run time (dynamic) type of more than one of its arguments.”。这摆明了就是和object system紧耦合在了一起。更准确地来讲multiple dispath其实就是专门 阅读全文
posted @ 2013-05-28 00:10 hugh lo 阅读(1287) 评论(0) 推荐(0) 编辑
摘要: 什么是coroutine?在C++里coroutine就是一个函数,但是这个函数可以有多个进入点(entry point),并且可以像线程一样挂起和唤醒。Wiki上有更精确的描述:“coroutines are computer program components that generalize subroutines to allow multiple entry points for suspending and resuming execution at certain locations.”。函数拥有了多个进入点的能力之后就可以在执行到某个点A的时候将控制权交给另外一个corouti 阅读全文
posted @ 2013-05-25 13:50 hugh lo 阅读(1427) 评论(0) 推荐(0) 编辑
摘要: 初步印象:GO语言是一门对工程师非常友好的语言。对软件开发过程中的设计,单元测试,编码格式,打包发行,编译这几个方面都有很全面和统一的解决方案。正反应了GO语言的设计哲学:一件事情,只需要一种方法。这个是与C++相反的编程哲学。有兴趣可以读读Rob Pike的文章http://talks.golang.org/2012/splash.article#TOC_3依赖问题:GO语言的设计目标之一就是解决C/C++中的文件依赖问题。随着代码规模得不断增长,文件之间的依赖关系将会变得越来越复杂。C/C++语言的编译效率受了严重的挑战。GO语言不像是C++和C用宏来解决文件之间的依赖问题。与C/C++相 阅读全文
posted @ 2013-05-03 00:03 hugh lo 阅读(181) 评论(0) 推荐(0) 编辑
摘要: 《Getting Real》这本书想来不用做太多介绍。我把书下载到了手机上,用一些零敲碎打的牛皮糖时间看了全书的80%左右。由于对promotion之类的内容不感兴趣,所以就没有继续阅读下去。虽然我不做web开发,并且日常工作多发生在传统的开发场景下,仍然从这本书中获益良多。书中的很多观点都值得玩味,并且更多的是一种态度而不是方法。正因为表达得是一种态度,使得这本书具有了更广泛的意义。以我看来,最... 阅读全文
posted @ 2013-04-18 01:28 hugh lo 阅读(205) 评论(0) 推荐(0) 编辑