我想在其堆棧大小增加到10.000.000的另一個線程中運行遞歸函數「hueckel_operator()」。 首先,當我點擊檢測邊緣按鈕時調用hueckel_operator。所以我一直在detect_edges_click()函數創建新的線程爲當嘗試啓動一個進程時發生ThreadStateException
private void detect_edges_Click(object sender, EventArgs e)
{
var stackSize = 20000000;
Thread workerThread = new Thread(new ThreadStart(hueckel_operator), stackSize);
workerThread.Start();
}
public void hueckel_operator(int counter4, int counter5)
{
}
,但我得到一個錯誤「錯誤22沒有重載‘hueckel_operator’匹配委託‘System.Threading.ThreadStart’」
在哪我可以創建一個新的線程來執行我的遞歸函數嗎?
而不是創建一個新的線程,我應該更好地增加我的主線程的堆棧大小?
還是我說的完全是廢話,我應該繼續閱讀更多關於線程?
在此先感謝
我已經做了所有的事情,如你所說,沒有錯誤,但hueckel_operator()在每次counter4和counter5增加5在這種情況下,我應該以某種方式將counter4和counter5分配給param。但我不知道該怎麼做 – mctuna 2012-07-09 16:46:11
@mrtcn:我建議你用兩個int成員定義一個自定義類型,並用它來傳遞參數。我用一個例子編輯了我的答案。 – Tudor 2012-07-09 16:48:55