nativescript - 为什么我的 Nativescript 工作人员会减慢繁重的进程?
问题描述
我有一个应用程序在某些时候会做一些密集的工作,它会阻塞 UI 大约 10 秒。由于加载动画和我的服务都在主线程上,我决定使用 nativescript 工作者。UI 不再冻结,但该过程需要更多时间(100 秒对 10 秒)。
有人知道出了什么问题吗?
我worker.ts
的很简单:
import "tns-core-modules/globals";
import { DatabaseService } from "../services/database.service";
const context: Worker = self as any;
const databaseService: DatabaseService = new DatabaseService();
context.onmessage = msg => {
databaseService.fillWithMissions(msg.data).then((n:number)=>{
(<any>global).postMessage("test");
});
};
当我的组件收到 postMessage 时,我在终止该组件后调用另一个类似的工作人员,仅此而已。运行两者大约需要 100 秒。
如果我从主组件调用我的databaseService.fillWithMissions()
方法,UI 会冻结,但运行这两个方法大约需要 10 秒。
解决方案
推荐阅读
- python - 为什么我会收到此 pylint 错误:“生成器‘生成器’没有‘iloc’成员
- postgresql - 从 Spring Boot 1.5 升级到 2.0 - 无法在只读事务中执行 UPDATE
- html - Flex 孩子不占用它自己孩子的宽度并切断悬停
- kdb - 比较q kdb中表的两个字符串列的值
- testing - SOAP UI - 在测试套件中所有测试用例的所有测试步骤请求中设置节点值
- android - 在 Utils 类中提取 Glide 的标头
- javascript - 选择表格数据(对象数组)JS的高性能方法
- vb.net - VB.Net Task 结果自动转换为 Task(of Task)
- r - 将 2d 矩阵转换为 3D 矩阵
- python - 如何向 Django 用户模块添加自定义字段?