【发布时间】:2016-05-08 17:54:31
【问题描述】:
我已经编写了一些代码,我想在一个包中提供它,但我也想将它作为工人公开给包消费者。为此,我创建了一个包装类,它在内部运行隔离并使用发送命令和侦听器与隔离通信以提供功能。
当我想从bin 或web 目录使用这个包装类时,就会出现问题:提供的Uri 是从运行/主目录Isolate 而不是从包根目录插入的。对于bin,它是packagename|bin/,对于web,它是packagename|web。
我想将这个类导出给消费者,这样他们就可以选择一种比构建自己的Isolate 更简单的方法,但我不确定如何指定将在 spawnUri 中使用的主文件。
有没有办法指定文件,这样无论主 Isolate 从哪里运行,它都将始终解析为正确的文件。
结构:
// Exports the next file so the class in it will be package visible
packageroot -> lib/package_exports_code_that_spawns_isolate.dart
// This file should contain URI that always resolve to the next file
packageroot -> lib/code_that_spawns_isolate.dart
// The main worker/Isolate file
packageroot -> lib/src/worker/worker.dart
谢谢。
【问题讨论】:
标签: dart dart-isolates