红帽白皮书新鲜出炉!点击获取,让你的云战略更胜一筹! 了解详情
写点什么

Mono 3.6 发布,支持在 Mac 系统使用 Nuget

  • 2014-08-15
  • 本文字数:1150 字

    阅读完需:约 4 分钟

Mono 3.6.0 发布,此版本从上一个版本开始,总共提交了 878 个commits。自2014 年 3 月 10 日开始,共有66 位贡献者参与开发; 其中有22 位首次提交的贡献值,他们修复了 112 个 bug。

Mono 是一个由 Xamarin 公司(先前是 Novell, 最早为 Ximian)所主持的自由开放源代码项目。该项目的目标是创建一系列符合 ECMA 标准(Ecma-334 和 Ecma-335)的.NET 工具,包括 C#编译器和通用语言架构。 与微软的.NET Framework(共通语言运行平台)不同,Mono 项目不仅可以运行于 Windows 系统上,还可以运行于 Linux,FreeBSD,Unix,OS X 和 Solaris,甚至一些游戏平台,例如:Playstation 3,Wii 或 XBox 360。

本次发布亮点:

  • Profiler 新增运行时性能计数器。
  • profiler 现提供了回溯统计模式 (statistical mode)。同时,在 ARM 上,追踪模式 (tracing mode) 可正常工作。
  • 对类库进行较大规模的重构。在无 cygwin 的 Windows 上,Mono 现在几乎可以构建系统程序。
  • 支持在 Mac 上使用 NuGet。

Debugger(调试器)

  • 支持行和列的范围。 支持 pdb2mdb。
  • 支持在 top frame 中用于改变当前行。
  • 修复大量的 bug 和性能的提升。
  • 支持不通过 getting 查看简单属性。
  • 新增的缓冲响应模式 (buffered response mode) 来提高链路料率,例如延烧 USB 的延迟。

GC(垃圾回收)

  • GC bridge 在工作性能上有很大改进。目前新增的两种模式可显著改善 CPU 工作负载问题。

Class Libraries(类库)

  • 改进了多个 http 协议栈
  • 实现 System.IO.Compression
  • 实现 System.Security.Claims

Performance(性能)

  • 重新设计 locking, 在方法查找中废弃 hot lock
  • 使用 fine grained locking 代替 big hot lock。
  • 在部分运行时的内部使用更好的散列算法,以避免一些极端情况,从而提高性能

Profiler(探查器)

  • 新增回溯统计模式 (statistical mode)
  • 新增周期性 flushing,有助于提升用户操作的交互体验。
  • 新增运行时性能计数器。见 mprof-report。

其他

  • 修正了 CIL 前缀不一致性问题。
  • 现在可部署在 ikdasm
  • 优化 EqualityComparer 以支持更多的类型。
  • 在 OS X 下,Mono.Unix.Native.Syscall.getxattr()现在可以返回 Errno.ENOATTR
  • MSBuild 实现了可以构建 Project K and Roslyn

该版本还包含了一些 bug 修复。改进的完整列表请参看发布说明

就本次版本发布,在.NET社区中已经有一些热议的话题: 如C#与F#, C#与JAVA 语言之争,甚至还涉及关于移动游戏平台的Unity3D 的讨论等。总之,本次Mono 3.6 发布对性能的提升,极大的吸引了老用户的注意力,如,有一个已经使用Mono 2.0 版本多年的老用户明确表示要尽快把项目升级为Mono 3.6 版本。


感谢郭蕾对本文的审校。

给InfoQ 中文站投稿或者参与内容翻译工作,请邮件至 editors@cn.infoq.com 。也欢迎大家通过新浪微博( @InfoQ )或者腾讯微博( @InfoQ )关注我们,并与我们的编辑和其他读者朋友交流。

2014-08-15 03:161979
用户头像
王文刚 Instagram 营销专家

发布了 37 篇内容, 共 22.7 次阅读, 收获喜欢 55 次。

关注

评论

发布
暂无评论
发现更多内容

架构实战营模块三作业

hunk

架构实战营

消息队列设计文档

青春不可负,生活不可欺

演讲稿:项目的架构设计与模块规划

三掌柜

5月日更

消息队列 - 架构设计文档

sN0wpeak

架构实战营

架构实战营-模块3作业

大师兄

用Python帮忙找指定小说最新更新且网速最快的网站

老猿Python

Python 爬虫 编程语言 百度搜索 小说更新

秘笈分享! 24 小时无人自习室为什么这么火?

IoT云工坊

小程序 人工智能 物联网 无人自习室

C语言0数组\柔性数组使用介绍

良知犹存

c

打破思维定式(五)

Changing Lin

5月日更

Python OOP-4

若尘

面向对象 oop Python编程 5月日更

STM32F103C8/BT6最小系统原理图、PCB

不脱发的程序猿

嵌入式 单片机 STM32F103C8T6 MCU ST

消息队列架构详细设计文档

唐江

架构实战营

模块三:课后作业

菲尼克斯

架构实战营

读完你就知道对话式人工智能的数据采集如何解决啦!

澳鹏Appen

人工智能 自然语言处理 聊天机器人 nlp nlu

架构实战营 模块3 课后作业

༺NPE༻

函数和对象的关系

顿晓

5月日更

密码学系列之:NIST和SHA算法

程序那些事

数据结构 密码学 程序那些事

优柔寡断的人,能成什么大事

Kareza

个人成长 5月日更 反思总结

关于中台,聊聊我认为相对客观的三点认知

架构精进之路

中台 5月日更

Nginx基础配置-资源缓存配置

梁龙先森

nginx 大前端 缓存;

想要做网页游戏怎么办 ?PixiJs 篇(三)

空城机

大前端 游戏 pixi 5月日更

怎样使用过程自动化来实现过程的习惯性和持久性?

渠成CMMI

自动化 开发 CMMI

缓存系统稳定性 - 架构师峰会演讲实录

万俊峰Kevin

缓存 微服务 分布式缓存 Go 语言

百度大脑开放日厦门站-企业服务专场报名

百度大脑

百度大脑 开放日 企业服务

STM32如何计算RTC时钟异步预分频和同步预分频

不脱发的程序猿

嵌入式 RTC stm32 单片机 ST

【LeetCode】叶子相似的树Java题解

Albert

算法 LeetCode 5月日更

Ansible Inventory

耳东@Erdong

ansible 5月日更

个站建立基础教程

Damon

网站 5月日更

毕业前写了20万行代码,让我从成为同学眼里的面霸!

小傅哥

Java 面试 小傅哥 求职 毕业生

图算法系列之计算图中最短路径

Silently9527

数据结构和算法 图算法 广度优先搜素

架构实战营模块 3 作业

梦寻解语花

架构实战营

Mono 3.6发布,支持在Mac系统使用Nuget_语言 & 开发_王文刚_InfoQ精选文章