写点什么

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:101832
用户头像
臧秀涛 略懂技术的运营同学。

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

关注

评论

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

从用户关系看产品发展

石云升

产品经理 产品思维 产品分析 10月月更

必须得会的汽车ECU研发基础—底层软件介绍4

SOA开发者

MyCAT、DRDS、TIDB、TDSQL、TBase 在实现分布式事务时的区别及其各自的优势?

腾讯云数据库

数据库 tdsql

🚄【Redis基础指南】推荐给大家的「主从模式」+「缓存穿透」的学习小贴士(提炼优化)

洛神灬殇

redis Redis缓存穿透 10月月更

流计算 Oceanus 限量1元秒杀,立省2000元

腾讯云大数据

Python代码阅读(第34篇):列表元素出现频率字典

Felix

Python 编程 Code Programing 阅读代码

带你读Paper丨分析ViT尚存问题和相对应的解决方案

华为云开发者联盟

论文阅读 华为云 Vision Transformer 卷积核

TDSQL交易型分布式数据库背景分析

腾讯云数据库

数据库 tdsql

出自阿里P8之手的这份微服务架构实践手册,为何能霸榜GitHub一周

进击的王小二

Java 架构 分布式 微服务

数字化加速时刻,天津港解锁了“天工开物”新篇

脑极体

携程 x StarRocks:高效支持高并发查询,大幅降低人力和硬件成本

StarRocks

大数据 数据分析 高并发 StarRocks

号角声响!联想图像发起“百家百试”项目第二期,诠释“真国货之光”

解读世界互联网大会新品——智能运维2.0,管运提效再升级

云计算

使用AI在原神里自动钓鱼,扫描Git仓库泄露的密码 【蛮三刀酱的Github周刊第三期】

Zhendong

GitHub

一文读懂 OceanBase 数据库的SLog日志

OceanBase 数据库

oceanbase OceanBase 开源 OceanBase 社区版 OceanBase 数据库大赛

这本笔记!仅需16个小时,让你像阿里P7一样掌握Spring源码解析

Java 架构 面试 程序人生 编程语言

手把手教你使用Studio Lite + Digtal car!助力智能汽车场景、轻应用开发更轻松!

SOA开发者

运用贝塞尔曲线绘制笔锋效果

ZEGO即构

音视频 笔锋实践 贝塞尔曲线

【Python自动化测试网站推荐】免费资源网址,帮你找到所有想要的资源!!

程序员阿沐

北京博睿宏远数据科技股份有限公司声明

博睿数据

报名|飞桨中国行- AI赋能软硬件产品创新

百度大脑

人工智能 百度 飞桨

kubernetes pod访问不了外网但是宿主机可以

ilinux

Redis和tdsql数据异地同步(迁移)案例

腾讯云数据库

数据库 tdsql

腾讯云原生数据库 TDSQL-C荣获“云原生卓越技术提供商”奖项

腾讯云数据库

数据库 tdsql

云原生数据库TDSQL-C和传统主备方式数据库有什么区别?

腾讯云数据库

数据库 tdsql

华为宣布启动“开源雨林”计划,与社区伙伴共迎开源挑战

盘盘 DevOps“衍生品”: DevSecOps、NoOps、AIOps

SoFlu软件机器人

必须得会的汽车ECU研发基础--ECU是什么1

SOA开发者

Android性能优化之Android 10+ dex2oat实践

字节跳动终端技术

字节跳动 移动开发 Android; 火山引擎

Groovy入门常用语法

FunTester

Java 语法 测试开发 Groovy FunTester

沈抚示范区·“华为云杯”2021全国AI大赛圆满落幕

华为云开发者联盟

人工智能 华为云 modelarts AppCube AI大赛

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