[原文发表地址]: Building Parallel Applications using Axum
[原文发表时间]: Friday, May 08, 2009 10:05 PM
今天我们在MSDN DevLabs里发布了Axum。它是一种专为编写并行应用程序而设计的.NET编程语言。
使用Axum,开发者可以充分利用.NET Framework的强大功能和便捷性,轻松为多核系统构建扩展应用程序来实现多核用户体验。为了确保安全的并行开发,Axum采用了以下这些设计概念:
- 域隔离状态。如果代码中存在的隐性依赖关系就会会导致很难被跟踪查找的并发bug。域隔离状态能帮您避免这种隐性依赖,这样您可以集中精力在算法和代码上,而不必过分关注并行问题。
- 代理(Agents)是处理消息的控件线程。为了达到扩展性和及时响应的要求,消息的处理是异步的。Axum采用一个合作的阻塞模型,利用延迟来做一些有意义的工作;如果一个代理想要接收一条消息,那么它就会阻塞,允许在其位置执行另一个代理。
- 消息传递并非总是可行 — — 在某些情况下,它只是意味着过多的开销。通过 Axum,您可以声明代理打算如何使用域状态。编译器将确保代理遵守其声明的意图,在运行时(runtime)会相应地调度您的代理,以确保安全运行。
- 在 Axum,并发是默认的。所有的代理都是并发执行的,除非您显式限制它们。这意味着您不用花费过多的时间研究多线程,从而可以集中精力处理您自己的代码。
- 代理可在一个单一进程中被托管,也可以在多进程环境中的一个单独的进程中被托管,或者可以在一个单独的机器中被托管。这个统一的编程模型意味着当您要在一个分布式的方案中运行它时,您无需重写您的代码。
您可以从DevLabs下载Axum,请通过项目论坛告诉我们您的想法!在团队博客上, 你也可以了解到关于Axum的最新信息。
Namaste!
打印 | 张贴于 2009-05-21 21:45:28 | Tag:暂无标签
留言反馈