【问题标题】:Can chrome native client do anything that javascript cannot do?chrome原生客户端可以做javascript不能做的事情吗?
【发布时间】:2014-05-28 05:18:40
【问题描述】:

除了使用您选择的语言和运行速度更快之外,我对 Chrome 中本机客户端的实用性感到困惑。

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

【问题讨论】:

  • 从我刚刚读到的内容来看,它看起来并没有提供比 JS/HTML5 所能提供的更多的东西。但将桌面应用程序移植到 Web 应用程序会更好,而且通常速度更快。 developer.chrome.com/native-client/overview
  • 谢谢,山姆。我只是希望他们的网站上有一个明确的单行答案。

标签: javascript google-chrome google-nativeclient


【解决方案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

对于 Portable Native Client,最显着的功能是使用线程和可移植内在函数 (SIMD) 的能力。也许编写可以跨平台运行的核心逻辑(也就是可以与不同平台上的不同视图交互的 C/C++“模型”)并不是一个严格的能力,但使用它是一个好处NaCl,尤其适用于也使用 Objective C/Android NDK 构建其应用程序的原生移动版本的开发人员。

【讨论】:

  • 我认为您是在说“是的,NaCl 可以做的不仅仅是 javascript”,它使用套接字 API 和对多线程的直接支持。对吗?
猜你喜欢
  • 2011-02-02
  • 1970-01-01
  • 2018-07-02
  • 2021-03-02
  • 1970-01-01
  • 2020-06-25
  • 2017-10-13
  • 1970-01-01
  • 2015-05-20
相关资源
最近更新 更多