运行 个 NativeScript 后台任务
Run tasks in background in NativeScript
我正在使用 NativeScript 2.0 并且我正在开发 Android 模块 这是不允许的在主线程运行!
是否有模块可用于 运行 后台线程中的函数?
或者是否可以在 "native" JavaScript 代码(不是 TypeScript!)中使用 AsyncTask class 之类的东西?
那么你应该看看网络工作者:
Web Worker 为后台线程中的 运行 脚本提供了一种简单的 Web 内容方式。工作线程可以在不干扰用户界面的情况下执行任务。
在此处查看更多信息:https://developer.mozilla.org/en-US/docs/Web/API/Web_Workers_API/Using_web_workers
我想你的答案可以在这篇文章中找到http://developer.telerik.com/featured/benefits-single-threading-model-nativescript/
基本上,目前唯一支持的选项是将代码封装到用原生 Android 编写的插件中。该团队正在努力支持某种与网络工作者一致的线程选项,但目前还没有任何支持。
背景可以看看这篇文章:http://developer.telerik.com/featured/benefits-single-threading-model-nativescript/
也就是说,目前您最好的选择是使用此模块来实施 运行 和 WebWorkers:https://github.com/NathanaelA/nativescript-webworkers
nativescript 添加了网络工作者。
https://docs.nativescript.org/angular/core-concepts/multithreading-model.html
var worker = new Worker('myWorker');
worker.postMessage('hello');
worker.onmessage = function(msg) {
console.log('answer from worker',msg.data);
}
在工人中myWorker.js
require('globals'); // necessary to bootstrap tns modules on the new thread
onmessage = function(msg) {
postMessage('bye');
}
正如 Nativescript 演示应用所证明的那样 single-threaded 模型很好,因为 运行 UI 线程上的所有内容都非常快。但是仍然如果你需要后台任务以防时间操作,Nativescript引入了Workers API.
我们知道,作为网络世界中的网络工作者。请务必记住,每次启动新工作线程时,都会增加应用程序的资源和内存占用。
如需进一步阅读,您可以参考 this 博客。
我正在使用 NativeScript 2.0 并且我正在开发 Android 模块 这是不允许的在主线程运行!
是否有模块可用于 运行 后台线程中的函数?
或者是否可以在 "native" JavaScript 代码(不是 TypeScript!)中使用 AsyncTask class 之类的东西?
那么你应该看看网络工作者:
Web Worker 为后台线程中的 运行 脚本提供了一种简单的 Web 内容方式。工作线程可以在不干扰用户界面的情况下执行任务。
在此处查看更多信息:https://developer.mozilla.org/en-US/docs/Web/API/Web_Workers_API/Using_web_workers
我想你的答案可以在这篇文章中找到http://developer.telerik.com/featured/benefits-single-threading-model-nativescript/
基本上,目前唯一支持的选项是将代码封装到用原生 Android 编写的插件中。该团队正在努力支持某种与网络工作者一致的线程选项,但目前还没有任何支持。
背景可以看看这篇文章:http://developer.telerik.com/featured/benefits-single-threading-model-nativescript/
也就是说,目前您最好的选择是使用此模块来实施 运行 和 WebWorkers:https://github.com/NathanaelA/nativescript-webworkers
nativescript 添加了网络工作者。 https://docs.nativescript.org/angular/core-concepts/multithreading-model.html
var worker = new Worker('myWorker');
worker.postMessage('hello');
worker.onmessage = function(msg) {
console.log('answer from worker',msg.data);
}
在工人中myWorker.js
require('globals'); // necessary to bootstrap tns modules on the new thread
onmessage = function(msg) {
postMessage('bye');
}
正如 Nativescript 演示应用所证明的那样 single-threaded 模型很好,因为 运行 UI 线程上的所有内容都非常快。但是仍然如果你需要后台任务以防时间操作,Nativescript引入了Workers API.
我们知道,作为网络世界中的网络工作者。请务必记住,每次启动新工作线程时,都会增加应用程序的资源和内存占用。
如需进一步阅读,您可以参考 this 博客。