QCon 演讲火热征集中,快来分享技术实践与洞见! 了解详情
写点什么

Mono 4.0 发布,支持 C# 6

  • 2015-06-09
  • 本文字数:1028 字

    阅读完需:约 3 分钟

Mono 4.0 本月正式发布。这标志着含有微软的 CoreCLR 项目的开放源代码的首个版本的问世。其默认的语言为 C# 6 ,这意味着 Mono 再一次抢在微软之前推出了新的 C#编译器的 RTM 版本。

除了我们之前报道的功能和变化,Mono 4 还应当具有“更小的调试开销”和“基本的PowerPC64 LE 支持”。目前这些功能的具体细节不详。

许多人在问,既然微软正在开发自己的开源、跨平台的CLR,为什么Mono 项目还要继续呢。Mono 的贡献者和reddit 用户 _alexrp_ 解释道,

我觉得人们对 Mono/CoreCLR 整件事情有种错误的观念。为什么一种虚拟机(VM)变成开源并移植到其它操作系统,就意味着另外一种虚拟机不能存在呢?这就好象是说,只能有一种 Python 实现,或者一种 JVM。那不是好事。竞争是良性的。

Mono 确实具备了很多 CoreCLR 没有的功能:LLVM、完整的提前编译(AOT)、原生客户端(NaCl)、微进程(tasklet)、跨虚拟机的垃圾回收 (GC)桥接(bridge)、各种探查器(profile)模块等等。Mono 的启动时间和运行时内存占用也针对那些连 CoreCLR(至少现在)都没有作为目标的平台/设备进行了优化。另一方面,CoreCLR 有更成熟的垃圾回收,以及通常来说更好的代码生成(也因此造成了更慢的启动速度)。两种虚拟机各有所长,没有理由不能同时存在。

倒不是我们坚持要保留我们自己的代码。如果切换到 CoreCLR/参考源代码有明显的好处(更少的维护、更正确、又具备足够的移植性),我们也很高兴这样做。我们已经引入了大量的参考源代码,而且我们也正在引入 CoreCLR 虚拟机的某些部分:

https://github.com/mono/mono/blob/master/mono/metadata/decimal-ms.c

https://github.com/mono/mono/blob/master/mono/metadata/threadpool-ms.c

4.0 版本也并非没有瑕疵。 Reddit 的用户 whatsinashagbox 写道,

我现在不太确定该如何处理这种情况,我有一个应用程序用到了一些第三方的 DLL,似乎要求 10.0.0.0 版本的 Microsoft.VisualBasic.dll,而它无法在 mono 4 下运行。发布说明中似乎暗示有办法让它使用.Net 4.5 的程序集,但是我不清楚怎么才能做到。有人知道怎么才能让它在新的 mono 版本下运行吗?

这事目前正在研究,似乎是个意外的问题。

查看英文原文: Mono 4.0 Released with C# 6


感谢邵思华对本文的审校。

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

2015-06-09 08:403225

评论

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

全球IT外包的趋势与发展

Ogcloud

外包 IT IT外包 IT外包公司 IT外包服务

ENNOVI推出ENNOVI-CellConnect-Prism

财见

如何优化UI自动化测试流程?

测吧(北京)科技有限公司

测试

从视觉识别到动作推荐:UI自动化测试的完整技术链条剖析

测吧(北京)科技有限公司

测试

淘系API接口推荐:淘宝商品描述信息数据接口

tbapi

淘宝API接口 淘宝商品描述接口

利用技术提升UI自动化测试的准确性

测吧(北京)科技有限公司

测试

重磅!云智慧推出轻量智能化服务管理平台轻帆云

云智慧AIOps社区

ITSM ITSM软件 ITSM解决方案 工单管理系统 工单管理

⏳大咖直播预告 | 数据库系统访问控制『面面观』

KaiwuDB

数据库

中文Navicat Premium 15 for mac破解安装包

iMac小白

已解决com.orbotix.common.DiscoveryException服务发现异常的正确解决方法,亲测有效!!!

小明Java问道之路

俄罗斯淘宝代购系统丨淘宝代购集运系统PHP

tbapi

淘宝代购系统 淘宝代购集运系统 俄罗斯淘宝代购系统

服务化UI页面结构树解析:优化UI自动化测试的实践探索

测吧(北京)科技有限公司

测试

UI自动化测试技术的突破与挑战

测吧(北京)科技有限公司

测试

PDF增强插件enfocus pitstop pro for mac中文破解版

iMac小白

为什么要对数据库优化

小魏写代码

云手机实现全方位的海外舆情监测

Ogcloud

云计算 云手机 海外云手机 云手机海外版 舆情监测

谷歌SEO优化技巧:外贸独立站关键词的筛选与挖掘

九凌网络

GaussDB(DWS)运维利刃:TopSQL工具解析

华为云开发者联盟

数据库 后端 华为云 华为云开发者联盟 华为云GaussDB(DWS)

软件测试学习笔记丨性能测试工具JMeter 基本使用

测试人

软件测试 测试开发

谷歌SEO外链怎么做:初学者入门指南

九凌网络

PopChar for Mac(特殊字符输入工具) v10.0直装激活版

iMac小白

软件测试学习笔记丨闭包与装饰器

测试人

软件测试

IT外包怎样帮助企业控制成本?

Ogcloud

IT IT外包 IT外包公司 IT外包服务 IT外包企业

长查询问题,TDengine 终于攻克了!

TDengine

tdengine 时序数据库

详细的Java学习指南,java高级面试题库

程序猿忙什么

Dynamic Wallpaper for Mac(Mac动态壁纸桌面) v17.4中文版

iMac小白

亚马逊云科技在中国区域推出Amazon Network Firewall

财见

为什么 ERC-20 代币钱包的开发会改变代币化经济的游戏规则?

区块链软件开发推广运营

dapp开发 区块链开发 链游开发 NFT开发 公链开发

做市机器人招代理

区块链技术

数字先锋| 望闻问切更有“数”!

天翼云开发者社区

云计算 云平台

"使用PAI实现涂鸦变大作"AIGC活动重磅来袭!

阿里云大数据AI技术

AIGC

Mono 4.0发布,支持C# 6_语言 & 开发_Jonathan Allen_InfoQ精选文章