1

c# を使用して iperf3 を自動化しようとしています。問題は、何らかの理由で iperf テストが完了すると iperf3 出力がリダイレクトされ、リアルタイムでリダイレクトされないことです。

public void RunIperf()
{
    {
        sortOutput = new StringBuilder();

        this.dummyProcess .OutputDataReceived += CaptureOutput;
        this.dummyProcess .ErrorDataReceived += CaptureError;

        this.dummyProcess .Start();
        this.dummyProcess .BeginOutputReadLine();
        this.dummyProcess .BeginErrorReadLine();
        this.dummyProcess .WaitForExit();
    }

    static void CaptureOutput(object sender, DataReceivedEventArgs e)
    {
        ShowOutput(e.Data, ConsoleColor.Green);
    }
}

このコードは、コンソールでリアルタイムにデータを取得する iperf2 では機能しますが、iperf3 では機能しません。問題が何であるかわかりません。

4

1 に答える 1

3

--forceflushフラグを iperf3 に使用してみてください。

于 2017-04-24T20:25:41.343 に答える