写点什么

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:162547
用户头像
王文刚 Instagram 营销专家

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

关注

评论

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

华仔架构设计-模块1作业

大师兄

区块链技术解决信任问题

CECBC

信任 信任机制

跟着源码一起学:手把手教你用WebSocket打造Web端IM聊天

JackJiang

网络编程 websocket 即时通讯 IM

架构实战营 模块一 作业

Pitt

业务架构训练营第 0 期模块一作业

菠萝吹雪—Code

作业1-20210406

Geek_b437fc

架构实战营模块一 - 总结

凯迪

博文推荐|多图详解 Apache Pulsar 消息存储模型

Apache Pulsar

大数据 开源 流计算 Apache Pulsar 消息系统

架构实战营 模块一作业

ercjul

架构实战营

【Java试题】从一道题目再看Java继承

程序员架构进阶

Java 面试 28天写作 4月日更

数据结构和算法

奈奈奈奈

数据结构与算法

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

Keyto

学生管理系统架构

Fleng

架构实战营

#架构实战营 模块一作业

薛定谔的指南针

架构实战营

Wireshark数据包分析学习笔记Day26

穿过生命散发芬芳

Wireshark 数据包分析 4月日更

软件架构设计分层模型和构图思考

xcbeyond

方法论 分层架构 架构设计 4月日更

架构实战营 模块一 总结

Pitt

CLOSE_WAIT过多导致Jetty服务器假死

风翱

Java Jetty Web 4月日更

Redis 6.0 多线程、客户端缓存、权限控制

escray

redis 学习 极客时间 Redis 核心技术与实战 4月日更

架构实战营课程一作业

Saber

架构实战营

Vue中Echarts基本使用

Chalk

大前端 eCharts 4月日更

区块链技术引领新一轮技术变革浪潮

CECBC

复兴or幻象?VR的2021三重门

脑极体

树莓派的组装与开机

IT蜗壳-Tango

IT蜗壳教学 4月日更

H1 作业1

wade

面试官

ES_her0

4月日更

区块链技术,通证经济未来趋势,两者有什么关系?

CECBC

区块链

vue接入腾讯实时音视频trtc-js-sdk的技术难点与解决方案

孙叫兽

Vue 音视频 解决方案 trtc-js-sdk

模块一作业

鲲哥

架构师实战营 模块一作业 微信业务架构图

好吃不贵

编程好习惯之理清数据的可变性

顿晓

4月日更 不可变

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