在 Chrome OS 应用程序的不同线程上执行后台 js 脚本 运行?
Do background js scripts run on a different thread in Chrome OS apps?
在 Chrome OS 应用的清单中,必须声明后台 js 脚本。
{
"name": "Hello World!",
"description": "My first Chrome App.",
"version": "0.1",
"manifest_version": 2,
"app": {
"background": {
"scripts": ["background.js"]
}
},
"icons": { "16": "calculator-16.png", "128": "calculator-128.png" }
}
每个 运行 都在各自的线程中吗?
它们是否相互阻塞或应用 windows 上的 JS 线程 运行?
Chrome 应用程序 windows 只是 "views",并不存在于单独的进程中。这就是证据。每个应用程序视图页面都可以 运行 chrome.runtime.getBackgroundPage
直接引用后台页面的 javascript 上下文(所有变量、函数等)。此外,后台页面可以获得对应用 windows 的 javascript 上下文的引用,使用 chrome.app.window.getAll
来引用返回的 appWindow 对象上的 contentWindow
。
正如另一位评论者所指出的,chrome 扩展的情况有点不同,但由于问题是关于应用程序的,我们只关心它。
在 Chrome OS 应用的清单中,必须声明后台 js 脚本。
{
"name": "Hello World!",
"description": "My first Chrome App.",
"version": "0.1",
"manifest_version": 2,
"app": {
"background": {
"scripts": ["background.js"]
}
},
"icons": { "16": "calculator-16.png", "128": "calculator-128.png" }
}
每个 运行 都在各自的线程中吗?
它们是否相互阻塞或应用 windows 上的 JS 线程 运行?
Chrome 应用程序 windows 只是 "views",并不存在于单独的进程中。这就是证据。每个应用程序视图页面都可以 运行 chrome.runtime.getBackgroundPage
直接引用后台页面的 javascript 上下文(所有变量、函数等)。此外,后台页面可以获得对应用 windows 的 javascript 上下文的引用,使用 chrome.app.window.getAll
来引用返回的 appWindow 对象上的 contentWindow
。
正如另一位评论者所指出的,chrome 扩展的情况有点不同,但由于问题是关于应用程序的,我们只关心它。