文章出處

Mono 3.2 發布了,對 Mono 3.0 和 2.10 版本的支持不再繼續,而且這兩個分支也不再提供 bug 修復更新。

Mono 3.2 主要新特性:

  • LLVM 更新到 3.2 版本,帶來更多的編譯優化
  • 默認使用 SGen Garbage Collector 垃圾收集器,提供3種新的實驗模式:Low pause mode、Low promotion nursery、Mostly precise stack scanning;
  • FullAOT編譯器生成更優化的代碼
  • Mono 3.2 基礎類庫可構建完整 Xamarin 的移動 profile
  • 降低編譯后的文件包大小(對比3.x系列版本,尺寸縮減并不明顯)
  • 性能提升
    • 解析性能大大增長
    • LINQ查詢更快
    • 大對象的克隆和裝箱速度提升兩倍
    • 優化Marshal.Read/Write方法

詳細介紹請看發行說明

上面的ppt需要FQ觀看,所以把這個ppt的內容和大家分享下,請看下面的截圖:
image
這張PPT介紹的是Mono 3.2的內容已經覆蓋桌面、服務器和移動端,支持.NET 4.5的核心功能包括基礎類庫和c# 5.0 .對 Mono 3.0 和 2.10 版本的支持不再繼續,而且這兩個分支也不再提供 bug 修復更新, 如果是新部署的Mono環境可以考慮直接使用Mono 3.2版本了,這是一個正式發布的版本,從2.10.8到3.2 已經持續開發了2年的時間,中間經歷好多的beta測試版本。
image
Mono 3.2版本有很多改變,這是一個完全成熟的.NET框架,包括垃圾回收器方面得到極大的提升,現在默認的GC實現稱為SGen(Simple Generational),除此之外的選擇還有Boehm(http://jezng.com/2012/02/How-the-Boehm-Garbage-Collector-Works/),Boehm GC的基本思想是在malloc()時記錄分配空間的元信息,然后在數據中保守地檢查每個可能為指針的整數。其好處是只要截malloc()和free()兩個接口即可,因此可被用于uncooperative環境(即C/C++這種指針和整數界限模糊的情況),缺點是由于做法保守可能會有垃圾無法被回收。另外Boehm中對象不能被移動,所以會有fragmentation。SGen的主要思想是將對象分為兩個generation:較新的稱為generation 0,較老的稱為generation 1。這種設計是基于這樣的一個事實:程序經常會申請一些小的臨時對象,用完了馬上就釋放。而那些一段時間沒釋放的,往往很長時間都不會釋放,如全局對象等。基于這個原則,SGen將GC分兩個階段:minor collection和major collection,分別用于回收nursery heap和major heap中的內存。
image
image
image
image
image
Mono 3.2 對移動開發方面也是有很多的改進,這部分主要是涉及到Android和ios上開發
image
image
Mono 3.2里頭還包含了很多微軟開源的框架:
image
image
 
Mono 3.2 跨平臺框架方面的內容:
image
image
image
image
image
image
后面的還有20張ppt是講Mono項目團隊正在做的事情,也有很多激動人心的特性:
 
image
image
image
 image

文章列表




Avast logo

Avast 防毒軟體已檢查此封電子郵件的病毒。
www.avast.com


全站熱搜
創作者介紹
創作者 大師兄 的頭像
大師兄

IT工程師數位筆記本

大師兄 發表在 痞客邦 留言(0) 人氣()