学无所长,一事无成
发布时间:2013-11-21 10:23:14
Celluloid 缺省使用 "ATOM 模式"(详见 Glossary)。在 ATOM 模式下,Celluloid actos 会流水化作业,在这种模式下,当你执行一个阻塞调用时,主程序还会继续响应输入的请求,而非等待调用返回。......【阅读全文】
发布时间:2013-11-19 00:42:34
问题:我的 Celluloid 一运行就退出,如何解决?如果你的程序全部由 Celluloid actors 构成,每个 acotr 将运行在自己的线程中,如果 Ruby 主线程没什么事情可做,按照 Ruby 的设计思想,主线程退出时,其他线程也将同时退出。因此,最简单的解决办法就是在主程序中加上一个 sleep。sleep还有一个办法.........【阅读全文】
发布时间:2013-11-18 11:21:53
Protocol Interaction:actor 间的交互协议https://github.com/celluloid/celluloid/wiki/Protocol-Interaction注意:这一部分为高阶内容,使用上较复杂。建议不要轻易尝试。Celluloid 使用的异步消息协议可以让你直接为 actors 添加某些行为。想要发送一个原始的异步消息(raw asynchronous message)给 actor,使.........【阅读全文】
发布时间:2013-11-18 10:38:48
Timer : https://github.com/celluloid/celluloid/wiki/Timers所有的 Celluloid actor 内部都包含有一个定时器 Timer ,用于规划时间调度任务。这个特性非常有用,可以设置超时检测以及其他时间相关的任务。先看下 Celluloid#after 方法:class TimerExample include Celluloid.........【阅读全文】
发布时间:2013-10-25 10:52:11
Registry : https://github.com/celluloid/celluloid/wiki/Registry通过 Registry 我们可以将 actor 登记注册,随后我们就可以使用符号进行引用,使用方法如下:>> james = JamesDean.new => #>> Celluloid::Actor[:james] = james.........【阅读全文】