我有一个数据网格视图,其中包含指向xml文件的链接,我给用户选项在IE中打开它们。 我的问题是如何知道计算机可以打开多少文件而不会崩溃\卡住(显示警告消息框)。 另外,我怎么知道我需要多少睡眠时间?
我的代码:
if (dg_autoTestStatus.SelectedRows.Count >= MaxFilesCanOpen(/* How to implement this function */))
{
DialogResult dr = MessageBox.Show("Your computer should crash from opening too much files at same time.\n"
+ "Are you want to continue ?", "Warning",
MessageBoxButtons.YesNo, MessageBoxIcon.Warning);
if (dr == DialogResult.No) return;
}
string pathXMLfile = "";
foreach (DataGridViewRow dgvItem in dg_autoTestStatus.SelectedRows)
{
pathXMLfile += "\\" + dg_logs.Rows[dgvItem.Index].Cells[1].FormattedValue.ToString();
pathXMLfile += "\\" + dg_logs.Rows[dgvItem.Index].Cells[7].FormattedValue.ToString();
openXMLfile(pathXMLfile);
Thread.Sleep(500); // how can I know how much sleep I need ?!?
}
修改
也许我对自己的看法不对,但是如果你有一个300字文件(doc文件)的目录,现在你选择所有这些文件并按回车键。应该是什么? 我使用sleep becuase,而不是在新窗口中打开任何xml,而不是在新选项卡中。
答案 0 :(得分:1)
本文可能有助于回答您的问题: http://blogs.technet.com/b/markrussinovich/archive/2009/09/29/3283844.aspx
这些极端数字在您的情况下可能不实用。您必须使用判断或者只是进行实验,然后将保守限制设置为平均计算机上可以处理的五分之一。