我很新的線程編程。我實際上正在開發某種元搜索引擎,我需要一個每秒鐘解析網頁的應用程序。c#多線程for循環
在我的應用我有解析通緝網頁的IE瀏覽器的功能:go_parse(「http://www.google.com/page/1);
我想要做的是當函數已完成解析頁1解析頁2,等..但我有點困惑如何做到這一點。
我必須做一個循環,啓動go_parse函數至少50次(第1頁到50)。
希望有人可以幫助我。
Thanks in a dvance。
編輯:
與任務功能,我可以得到它的工作:
public void ProcessNextPage(int page)
{
Task t = Task.Factory.StartNew(() =>
{
go_parse("http://www.google.com" + searchForm.Text + "/"+page+"/");
});
t.ContinueWith(task =>
{
if (label2.Text != "Stopped")
{
page++;
SetTextBoxText(page.ToString(), textBoxPage, false);
ProcessNextPage(page);
}
});
}
private void button5_Click(object sender, EventArgs e)
{
label2.Text = "Started";
ProcessNextPage(int.Parse(textBoxPage.Text));
}
感謝所有
多線程的關係是什麼?頁面是否並行解析?您可能想查看**生產者消費者隊列模式**。 – Rotem
您使用的是哪個版本的.Net?如果.Net 4。0看看任務,並繼續與 – MBen
那麼在未來,我想有像5頁並行解析(取決於資源)的東西,但現在只是1後1將是一個好的開始。就像你說的那樣,隊列系統就是我要找的。 是的,我使用.net 4 – yves