Mono:SGen GC和其他方面的提升,PlayScript和CppSharp 正在开发中

Mono 3.2已于上月发布,新版本在GC和开发等方面做了一些提升。而像PlayScript 集成和CppSharp 这样的项目则已经在开发中。

Mono 3.2进一步提升了SGen GC,特别是针对下面的场景——

  • 流行对象负载,老一代对象非常欢迎的一些固定新生对象会导致创建很多记忆的集合。为了避免这种情况的发生,流行对象会被作为永恒对象直到下一次主收集。
  • 大规模线程栈负载,这种情况下需要合理地扫描大量大堆栈线程。这在以前通常会把大量压力放到规划阶段,因为它会产生非常大的固定队列。为了避免这种情况,SGen现在会在固定队列上使用哈希过滤,这大大降低了它们的平均大小,并且它会固定主要块而不是个别对象。

另外,在某些需要低延迟代码的地方现在还可以禁用主收集器。

SGen现在是mono的默认GC。

对于移动开发者而言,还有一些开发时间方面的提升——

  • 更好的iOS开发体验,支持增量构建和增量上传
  • 通过禁用某些特性减少移动踪迹的方式降低大小

Mono上框架的获取体验也得到了提升。Mono现在提供了多种由Microsoft开源的.NET框架。它现在支持:

  • Reactive Extensions
  • F#
  • Razor
  • Entity Framework
  • · ASP.NET Web Stack

还有一些其他内容,包括:

  • Cocos2D XNA (Cocos2D的端口) (以及在mono上运行的示例游戏)
  • Xamarin.Auth
  • Xamarin.Mobile
  • Xamarin.Social

在上个月的MonkeySpace会议上,Miguel de Icaza还展示了一些正在开发中的项目:

  • PlayScript是由Zynga创建的,目的是为了交付能够同时在移动和Web环境中运行的游戏,而不需要做完整移植。PlayScript编译器基于mono构建。Mono团队现在正致力于集成这些上游变化。
  • C++互操作故事正在由两方面推动
    • 发展Cxxi
    • CppSharp

你能够从幻灯片“Mono包括哪些新特性”和 Mono 3.2发布说明中找到更多相关的细节信息。

查看英文原文:Mono: SGen GC And Other Improvements; PlayScript, CppSharp In Works

你可能感兴趣的:(Mono:SGen GC和其他方面的提升,PlayScript和CppSharp 正在开发中)