如何在Dart中运行与退出无关的代码?

时间:2017-10-26 14:42:09

标签: dart

我愿意在后台执行pub get,如果启动它的进程已经终止,则忽略它。像这样:

// ... pubspec.yaml code changes
executeInBackground("pub get"); //async call, returns a Future
exit(0);

如果不使用Process.runSync()阻止调用,我怎么能这样做? (我希望程序尽快结束)

1 个答案:

答案 0 :(得分:1)

请参阅Process.start doc及其mode参数。

import 'dart:io';

main() async {
  final p = await Process.start(
    'pub',
    ['get'],
    runInShell: true,
    mode: ProcessStartMode.DETACHED, //all the magic is here
  );
  print(p.pid);
}