无法从本地脚本工作者访问角度服务

时间:2018-08-07 07:12:17

标签: angular multithreading nativescript

我正在按照本教程创建后台线程, https://docs.nativescript.org/core-concepts/multithreading-model#workers-api

这适用于简单的情况,但后来我有了 app.module.ts

@NgModule({
    declarations: [AppComponent],
    bootstrap: [AppComponent],
    imports: [
        NativeScriptModule,
        NativeScriptRouterModule,
        NativeScriptHttpModule,
        NativeScriptFormsModule,
        NativeScriptRouterModule.forRoot(appRoutes),
        LoginModule,
    ],
    providers: [
        HttpService,
        UserService,
        LogService,
        DatabaseService
    ],
    schemas: [NO_ERRORS_SCHEMA]
})

如何在w.onmessage()中使用类似UserService的服务,而无需使用依赖项注入。或如何在w.onmessage()中使用可注射类

1 个答案:

答案 0 :(得分:1)

不幸的是,你不能。 NS工作者在完全不同的上下文中运行,并且没有共享内存。

我建议主要使用worker处理大量数据并将其发送回主线程。唯一的其他选项是依赖项注入和代码复制。