5

Dで他のプロセスを非同期的に呼び出す好ましい方法は何ですか? 私のユースケースは、終了ステータスのチェックを呼び出しsvn status、その標準出力とエラーを解析することです。

4

1 に答える 1

5

私はstd.stdio.popenがあなたが望むものだと思います:

void popen(string command, in char[] stdioOpenmode = "r");

a で使用するとFile、出力が得られます。何かのようなもの:

File f;
f.popen("svn status", "r");
char[] line;
string result;
while (f.readln(line))
    result ~= line;
return result;

または、明らかにこれを行うstd.process.shellを使用できます(エラー時にErrnoExceptionをスローします)。

于 2012-12-12T18:59:09.823 に答える