.NET 应用程序支持直接调用 WebAssembly 模块
WebAssembly Runtime 现已添加 .NET Core API,开发者可直接在 .NET 应用程序中调用 WebAssembly 模块。
Mozilla 宣布由 Bytecode Alliance 创建的 Wasmtime(WebAssembly runtime)现已添加处于早期预览版状态的 .NET Core API,这就意味着开发者可以直接在 .NET 应用程序中调用 WebAssembly 代码。
Bytecode Alliance(字节码联盟)是由 Mozilla、Fastly、Intel 与 Red Hat 联合成立的组织,该联盟旨在通过协作实施标准和提出新标准,以完善 WebAssembly 在浏览器之外的生态。Mozilla 提到,.NET Core 作为一个跨平台的 Runtime,仍提供对 WebAssembly 的支持主要三个好处,除了可跨平台共享更多代码之外,还能安全地隔离不受信任的代码,同时凭借着 WebAssembly 的接口类型(WebAssembly Interface Types),WebAssembly 和 .NET 可相互传递复杂类型。
虽然我们能够使用 .NET Core 构建跨平台应用,但如果要使用诸如 C 或是 Rust 等原生函数库,这仍然是十分不方便的操作,因为需要函数库为每个平台发布特定函数库版本。不过有了 WebAssembly 之后,我们可以将其作为桥梁以简单满足上面的需求。原生函数库可以先编译成 WebAssembly,然后包括 .NET Core 在内的许多平台就能使用这些 WebAssembly 模块,这将简化函数库的发布以及应用程序对这些函数库的依赖方式。
由于 WebAssembly 是面向网页设计的,网页是一种每次访问网站(读/写数据)都会执行不受信任代码的环境,WebAssembly 模块只能调用从主机环境明确输入的外部函数,而且只能在主机分配的内存区域进行读写数据,这种沙盒设计方式也能被应用在 .NET Core 中,以增加安全性。通过支持 WebAssembly,.NET Core 也能使用沙盒以执行不信任代码。
另外,Bytecode Alliance 力推的 WebAssembly 接口类型增加了 WebAssembly 与其他语言的互通性,.NET Core 也能从中受益。Mozilla 表示,WebAssembly 接口类型简化了应用程序与 WebAssembly 模块间来回传递复杂类型所需的“胶水代码”。当 Wasmtime 的 .NET API 最终可以对接口类型进行操作,WebAssembly 和 .NET 之间就能够无缝地传递复杂类型。
最后,Wasmtime 新增加的这个 .NET Core API 尚处于预览阶段,Bytecode Alliance 成员仍在对其积极开发中,更新将不保证向后兼容。当前目标是让 Wasmtime 更为稳定,因此不建议开发者将 Wasmtime 的 .NET Core API 用于正式产品开发。
低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
- 上一篇
每日一博 | 从 phper 到 phjer:PHP2Java 挖坑填坑记
(马蜂窝技术原创内容,申请转载请在公众后后台留言,ID:mfwtech ) 大家好,我是来自马蜂窝电商旅游平台的甲小蛙,从前是一名 PHP 工程师,现在可能是一名 PHJ 工程师,以后...... 前阵子,我从大道消息听说公司商品订单技术栈要推 Java。我是一个喜欢走在时代前列线上的人,凡是要做到领先。我对 Java 也是仰慕已久,于是花了两天时间学习 Java,并调研各种框架和解决方案,决心要把商品和订单的主要功能用 Java 重构掉。 在经历了 798难后现在这些东西都踉跄上线了,我也成了马蜂窝的顶梁柱。虽然表面看来风光无限,但是这一路走来相当不容易,累到有上觉没下觉,踩坑把腿踩断,才有了今天这篇战记。希望大家看完后不要吸取任何教训,抱着不撞南墙不回头的心态,继续从头踩坑。 风险提示:文章会先带大家入坑,然后出坑,请保持秩序不要拥挤;如果文章看了一半就去实践,有被队友打死的风险! Part.1 准备篇 终于要开始学习了! 9 月 1 号,趁着开学季,买了《两天精通 Java》、《三天精通 SpringBoot》两本书,看到书名仿佛感觉胜利在向我招手。 9 月 2 号书就到了,两...
- 下一篇
OSCHINA 公布 2019 年度最受欢迎中国开源软件
经过 22 天的投票评选,今天 2019 年度最受欢迎中国开源软件产生了。 开源中国(OSCHINA)是目前国内为数不多深耕于围绕“开源/自由软件”为开发者分享开源业内事、传播开源价值观的平台。为了更好地展示国内开源现状,探讨国内开源趋势,激励国内开源人才,促进国内开源生态完善,开源中国每年会在年底举办一年一度的最受欢迎中国开源软件评选活动,该活动目前已成功举办五届。 由于对参选项目设置了分类竞争,可以看到今年获得年度最受欢迎中国开源软件的项目更加多元化,涵盖了基础软件、开发框架和基础组件、开发工具与应用软件等领域,下边来看看每一个获奖项目。 >>> 点击每个项目名可跳转进入项目介绍页面 基于参数服务器理念的机器学习框架——Angel Angel是一个基于参数服务器(Parameter Server)理念开发的高性能分布式机器学习平台,它基于腾讯内部的海量数据进行了反复的调优,并具有广泛的适用性和稳定性,模型维度越高,优势越明显。 Angel 的核心设计理念围绕模型。它将高维度的大模型合理切分到多个参数服务器节点,并通过高效的模型更新接口和运算函数,以及灵活的同步协议...
相关文章
文章评论
共有0条评论来说两句吧...
文章二维码
点击排行
推荐阅读
最新文章
- CentOS7设置SWAP分区,小内存服务器的救世主
- SpringBoot2配置默认Tomcat设置,开启更多高级功能
- CentOS8,CentOS7,CentOS6编译安装Redis5.0.7
- Linux系统CentOS6、CentOS7手动修改IP地址
- CentOS7,8上快速安装Gitea,搭建Git服务器
- CentOS8安装MyCat,轻松搞定数据库的读写分离、垂直分库、水平分库
- SpringBoot2整合Redis,开启缓存,提高访问速度
- MySQL8.0.19开启GTID主从同步CentOS8
- Docker快速安装Oracle11G,搭建oracle11g学习环境
- Docker使用Oracle官方镜像安装(12C,18C,19C)