庄周梦蝶

生活、程序、未来

Clojure并发详解[旧文重发]

| Comments

整理了旧文《Clojure并发》到我的知识库上,更适合阅读,有兴趣可以移步看下.

Clojure处理并发的思路与众不同,采用的是所谓STM的模型——软件事务内存。你可以将STM想象成数据库,只不过是内存型的,它只支持事务的ACI,也就是原子性、一致性、隔离性,但是不包括持久性,因为状态的保存都在内存里。

Clojure的并发API分为四种模型:

  • 管理协作式、同步修改可变状态的Ref
  • 管理非协作式、同步修改可变状态的Atom
  • 管理异步修改可变状态的Agent
  • 管理Thread local变量的Var。
    下面将对这四部分作更详细的介绍,除了用法之外,我们将深入到源码甚至Java字节码级别……

Leiningen教程中文版

| Comments

今天晚上做了一件一直想做而没有做的事情吧,开始翻译一些常用Clojure工具或者项目的文档,一个晚上的成果是《Leiningen教程中文版》,放在了我的wiki上,就不重复发布到博客了,有兴趣请移步。作为Clojure世界里的Maven+Ant,Leiningen是必学必会的工具。

最近工作上其实也有些收获,但是没有太多时间写博客,有机会再一一分享吧。不过可能我后面越来越多用的是Wiki,可以更多地关注我的Wiki,所有更新也可以在我的个人主页上看到。

以此篇博客作为新博客开张记录。我的老博客要说再见了,感恩BlogJava.net。