AICon上海|与字节、阿里、腾讯等企业共同探索Agent 时代的落地应用 了解详情
写点什么

WebKit 全面支持 WebAssembly

  • 2017-06-13
  • 本文字数:627 字

    阅读完需:约 2 分钟

Apple Safari 现在全面支持 WebAssembly,包括支持在未来集成 ECMAScript 模块和多线程。

Apple 为 WebKit 增加了对 WebAssembly 的全面支持,让 Safari 浏览器可以运行使用其他编程语言编写的代码。WebKit 目前支持 x86、x64 和 ARM 64 位平台上的 WebAssembly。

在浏览器里,WebAssembly 可以被作为一个 JavaScript 对象进行访问,所以 WebKit 可以重用已有的 JavaScript 功能来支持 WebAssembly。例如,WebAssembly.Instance API 是通过浏览器支持的 ECMAScript 模块来实现的,并为支持未来的特性做好准备。另外,WebKit 对 WebAssembly 的支持是线程安全的,所以可以在未来加入多线程支持,Chrome 的发展线路图中就包括了对多线程的支持。

代码被编译成WebAssembly 时,已经进行了各种性能上的优化。WebKit 增加了额外的两层优化,分别是Build Bytecode Quickly(BBQ)和Optimized Machine-code Generator(OMG),它们都是基于 B3 JIT ,WebKit 用它调优 JavaScript。据 Apple 工程师透露,BBQ 的编译速度比OMG 快4 倍,但生成代码的运行速度只是OMG 的一半。BBQ 用于加快代码的运行速度,OMG 用于预热代码,对在执行速度方面有很高要求的部分代码进行深度优化。

WebAssembly 包含在 Safari 技术预览版 32 里。Chrome 和 Firefox 在 3 月份已经提供了对 WebAssembly 的全面支持,而 Microsoft Edge 对 WebAssembly 的全平台支持处于预览模式,包括桌面版、移动版、Xbox 和混合现实

查看英文原文: WebKit Now Has Full Support for WebAssembly

2017-06-13 19:002530
用户头像

发布了 322 篇内容, 共 147.3 次阅读, 收获喜欢 148 次。

关注

评论

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

PageRank

GalaxyCreater

第13周作业

刘卓

GO语言 MD5 四种实现方式

5加3彩票

Go 语言

教师节送什么老师最开心?程序员三招解决家长送礼难题!

华为云开发者联盟

编程 程序

java安全编码指南之:Number操作

程序那些事

java安全编码 java安全 安全编码规范

synchronized实现原理及代码证明各种锁

Darren

源码 synchronized 轻量级锁 偏向锁 Monitor

第13周学习总结

刘卓

bit比特, Byte字节,基础知识

5加3彩票

TCP三次握手和四次挥手

5加3彩票

云栖大会边缘计算分论坛倒计时7天,这2点值得期待

阿里云Edge Plus

边缘计算

Go语言 sync.Mutex 源码分析

5加3彩票

Go 语言

聊聊开发工程师如何转型产品经理

长沙造纸农

程序员 开发者 产品经理 转型 中年危机

理解大端字节和小端字节

5加3彩票

PHP配置管理-yaconf

5加3彩票

php

关于第四次财富狂潮的思考,区块链如猛虎出笼?

CECBC

比特币 区块链 数字货币

PHP Db类强制读主库(master)的设计

5加3彩票

php MySQL

Linux命令netstat详解

5加3彩票

GO 语言超时实现

5加3彩票

Go 语言

马云:今天的区块链并没有被人们认识到价值!

CECBC

区块链 阿里巴巴 马云

MYSQL中时间类型底层存储,DATETIME ,TIMESTAMP,INT 如何选择?

5加3彩票

开始编译第一个typescript实例

程序员学院

Java typescript 大前端

【在云端 003】 星星之火,可以燎原——云时代的IoT

Bora.Don

云计算 IoT AIOT

Docker Compose 搭建 Redis Cluster 集群环境

哈喽沃德先生

redis Docker Docker-compose redis集群 redis cluster

从零开始搭建完整的电影全栈系统(三)——restfulApi的编写

刘强西

RESTful 电影api

GO 语言交叉编译

5加3彩票

Go 语言

epoll的原理和流程

5加3彩票

Redis哨兵(sentinel )机制讲解

5加3彩票

MySQL中修改数据表存储引擎的三种方法

Matrix Chan

MySQL 运维 数据表引擎

ZIP 也能边下载边解压?优酷流式解压技术揭秘

阿里文娱技术团队

ZIP

GO 语言异常处理

5加3彩票

Go 语言

遇到银河提现不了网站维护审核怎么办?

丛林里的余光

数据库 网站平台 提现

WebKit全面支持WebAssembly_JavaScript_Abel Avram_InfoQ精选文章