嗨,我遇到了一些麻煩,我是想知道如何在一個新的線程讀取XML文件,繼承人基本上就是我想要做的事:在新線程中打開XML文件?
//This is ran when the user presses the Enter Key
Thread LoadThread = new Thread(new ThreadStart(Test));
LoadThread.Start();
private static void Test()
{
FileStream stream = File.Open("TEST_1.xml", FileMode.Open);
//----
// Code Using File (I know this stuff works)
//----
stream.Close();
}
這裏的錯誤。
Directory \ TEST_1.xml',因爲它正在被另一個進程使用。
但是,當它不是它自己的線程它工作正常嗎?
感謝您的幫助,如果這樣做不能這樣做,我怎麼能打開文件沒有它讓我的程序凍結,直到文件已被打開?
再次感謝。
您是否在使用進程資源管理器查看當您嘗試讀取文件時鎖定了哪些文件? – RQDQ 2012-01-13 03:19:10
@Dusy - 嘗試在非線程方法中打開該文件並查看會發生什麼? – adatapost 2012-01-13 03:31:51
把'try'' catch'塊和close流放在'finally'塊中。 'finally {stream.Close(); }'也嘗試'stream.Flush();'&'stream.Dispose();'這有幫助嗎? – 2012-01-13 04:37:41