2012-05-29 36 views
0

我將實現一個線程池來運行我的應用程序。我的所有內容都保存在桌面上的文件夾下。如何將文件夾中的所有.txt讀入線程池

每個文件都是.txt格式。如何從給定文件夾讀取每個.txt文件,然後將.txt文件放入線程池/線程隊列?

+1

哇。這是一個模糊的問題......要讀取文件,你需要使用'System.IO.StreamReader'。有很多關於這方面的文檔。從那裏...我不知道你有什麼要做的讀取數據和創建線程隊列之間做什麼。 –

回答

0

這將是很好的地方開始尋找:ThreadPool.QueueUserWorkItemDirectory.GetFiles

對不起,我的vb.net生鏽,但這裏的C#。

foreach (string file in Directory.GetFiles(folder, "*.txt")) 
    ThreadPool.QueueUserWorkItem(ProcessFile, file); 


void ProcessFile(Object fileNameObject) 
{ 
    string fileName = (string)fileNameObject; 
    string contents = File.ReadAllText(fileName); 
    // ... process contents here. 
} 

你的問題說想看的書,然後推入線程池,但我會做反向這樣你就不會耗盡內存。排隊線程池中的文件路徑,然後讓工作線程線程讀取文件。

+0

甜!感謝Agent-J ... – user1419560

+0

在StackOverflow上,顯示讚賞的好方法是接受和/或提出有用答案。我很高興能夠提供幫助。 –

相關問題