是否有类似Stackless Python的内容,即支持C#中的continuation,microthreads和轻量级进程的框架?我知道C#5将部分支持这些功能。但是现在有什么东西可以使用吗?
答案 0 :(得分:2)
Axum与此类似,但已被正式删除为Microsoft的一个项目:
http://msdn.microsoft.com/en-us/devlabs/dd795202
我有一篇博文显示了工作中的基本合作例程:
http://adamhouldsworth.blogspot.com/2009/05/microsoft-axum-playtime.html
我不知道是否有任何这些想法被推广到.NET 4中的并行工作或C#next的async
内容。
它现在可以使用,并且有效 - 但是在某些小区域中功能不完整,而且在生产环境中不支持,因为它(是?)是一个孵化项目。
在CodeProject上查看一下(它可能会解决您的“轻量级进程”要求):
http://www.codeproject.com/KB/cs/managediocp.aspx
更新:此链接描述了TPL数据流,为了支持基于代理的编程,添加到.NET框架的更多原语。它可能也在你感兴趣的领域:
http://blogs.msdn.com/b/pfxteam/archive/2010/10/28/10081950.aspx
答案 1 :(得分:1)
My answer to this question可能会帮助您入门。我使用迭代器方法(yield return
)来实现一个简单的协同程序,以便在WPF中发生一系列动画。该序列将能够使用任何类型的循环等。这实际上只使用C#2.0功能。
答案 2 :(得分:0)
你的意思是类似于.NET框架的并行扩展PLINQ吗?
C#中的AFAIK枚举器块很像延续,但我不是python的专家。