gpt4 book ai didi

C# System.Diagnostics.Process 为大量数据重定向标准输出

转载 作者:行者123 更新时间:2023-11-30 19:03:49 24 4
gpt4 key购买 nike

我从 .NET 应用程序运行一个 exe,并试图将标准输出重定向到流阅读器。问题是当我这样做的时候

我的进程.exe >> 输出.txt

out.txt 接近 14mb。当我执行命令行版本时,它非常快,但是当我从我的 csharp 应用程序运行该过程时,它非常慢,因为我相信默认的 streamreader 每 4096 字节刷新一次。

有没有办法更改 Process 对象的默认流读取器?

最佳答案

我还没有尝试过,但看起来异步方法可能会提供更好的性能。不要使用 process.StandardOutput,而是尝试使用此方法:

Process process = Process
.Start(new ProcessStartInfo("a.exe"){RedirectStandardOutput = true});
if (process != null)
{
process.OutputDataReceived += ((sender, e) =>
{
string consoleLine = e.Data;
//handle data
});
process.BeginOutputReadLine();
}

关于C# System.Diagnostics.Process 为大量数据重定向标准输出,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2909050/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com