Chrome本机客户端可以执行javascript无法执行的任何操作吗?

sof*_*eer 7 javascript google-chrome google-nativeclient

我对Chrome中本机客户端的实用程序感到困惑,除了使用您选择的语言并运行得更快.

可以在javascript中无法在本机客户端完成任何事情吗?无论如何,我的意思是功能,而不是更好/更快的方式做同样的事情.例如,javascript无法打开UDP套接字,但本机客户端可以.

小智 1

您的第一行解决了 Native Client 提供实用程序的两点。NaCl 非常适合 C/C++/汇编编码人员将用他们选择的语言编写的应用程序带到网络上,并且 NaCl 可以帮助应用程序运行得更快/性能更好/更高效(也称为更少使用电池)。Native Client 还提供线程应用程序,允许编程模型(以及与线程相关的性能)在 Web 上本机运行(也称为不与 Web Worker 一起运行)。

Sockets API 适用于所有 Chrome 打包应用程序,区别在于该 API 使套接字直接连接到 NaCl 应用程序,速度更快,并且具有无需修改即可将现有本机应用程序移植到浏览器的优点。还有各种其他 API,例如游戏控制器、硬件解码(即将推出)和全屏/鼠标锁。在此处查找启用 NaCl 功能的 Pepper API 的完整列表: https: //developer.chrome.com/native-client/pepper_stable/c/index#pepper-stable-c-index

对于可移植本机客户端,最显着的功能是使用线程和可移植内在函数 (SIMD) 的能力。也许编写可以跨平台运行的核心逻辑(又名可以与不同平台上的不同视图交互的 C/C++“模型”)并不是一个严格的能力,但它是使用 NaCl 的一个好处,特别是对于也使用Objective C/Android NDK 用于构建应用程序的本机移动版本。