如何检测命令行Dart程序的第一个实例?

时间:2013-08-08 04:30:17

标签: dart

我想从命令行运行程序的多个实例,我需要知道哪个是第一个启动的 - 我需要同步它们。我还需要知道后续实例不是第一个。目前我问操作员这是否是第一个例子,但我宁愿不必这样做。

任何人都可以提出更好的方法来处理这种情况。

1 个答案:

答案 0 :(得分:2)

通常使用互斥锁来检测程序的实例是否是第一个瞬间。但Dart没有内置任何同步方法。

另一种方法是在环回接口上使用网络端口。选择固定端口,如果实例已启动,请检查是否可以侦听端口。如果端口不可用,则另一个实例已在运行。

作为一个积极的副作用,您可以使用连接在应用程序的实例之间进行通信。