从 bash 文件传递参数时出现单声道性能问题

本文关键字:单声道 声道 问题 性能 文件 bash 参数 | 更新日期: 2023-09-27 18:31:53

我刚刚在直接从命令行和作为 shell 脚本执行 C# 程序时遇到了 Mono 的这种非常奇怪的行为。该程序的最小版本基本上读取输入文件并对其进行操作。我注意到从命令行执行程序之间存在巨大的性能差异,例如:

mono program.exe file.txt

任务在几秒钟内完成。

但是,如果我创建一个 shell 脚本 execute.sh 并填充它

#!/bin/bash
mono program.exe $1

连续执行 ./execute.sh 文件.txt最多需要 10 分钟。我只能把我的头包起来。有没有人遇到过类似的问题?你知道可能出了什么问题吗?我使用的单声道版本是 Fedora 3.10 上的 16。该程序是为.NET 4客户端版本框架编译的。我也在 mas os 和 3.6 单声道下对其进行了测试,那里似乎还可以。所以也许安装单声道可能有问题?

简约的代码如下所示:

Stopwatch w = Stopwatch.StartNew();
var a = ReadMyFile.Read(args[0]);
Console.WriteLine("Structure read in {0}", w.Elapsed.ToString());

从 bash 文件传递参数时出现单声道性能问题

刚刚在 ubuntu 14.04 上测试了它,我没有这样的问题。

顺便说一下,没有ReadMyFile.Read,你可能想要添加你使用的确切代码。