产品战略专家梁宁确认出席AICon北京站,分享AI时代下的商业逻辑与产品需求 了解详情
写点什么

Xamarin 向 iOS 和 Android 引入 C#异步支持

  • 2013-03-15
  • 本文字数:668 字

    阅读完需:约 2 分钟

Xamarin 引入支持 iOS 和 Android 异步开发的库,现在已经发布了一个预览版本。该库主要基于微软的.NET 4.5,而后者是作为 Visual Studio 2012 的一部分于去年发布的。Xamarin 是之前人们所熟知的 MonoTouch 和 Mono for Android 开发平台的新名字。

作为最初的 Xamarin 2.0 的一部分,该移动平台采用了 Mono 和.NET 中的类库。而之前的 MonoTouch 和 Mono for Android 仅限于以 Silverlight/Moonlight 为基础的一个子集。 Rodrigo Kumpera 写道:

尽管异步是该版本的主题,但我们也将这两年来的改进打包到 Mono 运行时中了,覆盖了目前可支持 Android、Mac 和 iOS 用户的超过 7000 次提交。

该版本也带来了它对 iOS 脚本批处理编译器的改进。与其他大多数平台不同,iOS 不允许以 JIT 编译方式生成代码。这给动态调用的代码带来了问题,尤其是涉及泛型的时候。

在 iOS 上,我们目前为值类型生成“可共享的代码(shareable code)”,这是代码生成技术方面的一项革命性创新。在实践中,这意味着之前会提示“Attempting to JIT compile method”并崩溃的一整段代码现在能够正常工作了。在提供我们所能推断出的高性能、微调过的泛型代码的同时——比如直接调用 Foo(T x) 方法——我们会为 Foo(T x) 生成一个值类型的共享版本,可用于之前会失败的动态场景下。曾经的梦想变为了现实。

目前微软的.NET 中自有的 JIT 编译器并没有这种能力。尽管所有引用类型可以共享一个方法,但不同值类型的泛型方法必须重新编译。

.NET 4.0 引入的协变和逆变支持也已通过一些方式进入到Xamarin 平台。

查看英文原文 Xamarin Introduces C# Async for iOS and Android

2013-03-15 07:101846
用户头像
臧秀涛 略懂技术的运营同学。

发布了 300 篇内容, 共 134.3 次阅读, 收获喜欢 35 次。

关注

评论

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

架构师训练营第三周作业

路人

极客大学架构师训练营

架构师训练营第三周作业

坂田吴奇隆

第 03 周作业

Jeremy

设计模式——架构师的重要武器

拈香(曾德政)

设计模式 架构师 极客大学架构师训练营

架构师训练营W3 学习总结

Kun

Week3

泛岁月的涟漪

架构师训练营 第三周 作业

极客

架构师训练营第三周作业

努力努力再努力m

极客大学架构师训练营

架构师训练营 -week03 学习总结

GunShotPanda

架构师训练营第三周总结

olderwei

架构师训练营第3周作业

子豪sirius

架构师训练营-第3周-总结

Dawn

设计模式 极客大学架构师训练营

架构师训练营 -- 第三周 -- 作业1

lei Shi

练习 3-1

闷骚程序员

本周总结

Thrine

架构师-Week3-作业

龙7

架构师训练营 - 第三周作业

桔子

第3周作业

娄江国

极客大学架构师训练营

架构师训练营 -- 第三周 -- 总结

lei Shi

架构师第三周

Tulane

架构师训练营第三周心得

努力努力再努力m

极客大学架构师训练营

组合模式

Jeff

week3 命题作业

小叶

极客大学架构师训练营

Nginx系列教程(二)| 一文带你读懂Nginx的正向与反向代理

JackTian

nginx Linux 运维 lnmp 正向代理与反向代理

架构师-Week3-总结

龙7

week3 作业

Geek_z9dmvw

第三周学习笔记

子豪sirius

设计模式应用

wei

第三周学习总结

桔子

架构师课作业-第三周

Tulane

架构师第3周总结

上山砍柴

极客大学架构师训练营

Xamarin向iOS和Android引入C#异步支持_语言 & 开发_Jonathan Allen_InfoQ精选文章