我已經使用CreateThread()成功創建了單個線程。如何使用CreateThread()創建每個具有不同ThreadProc()函數的多線程
現在我想創建'n'個線程,但每個線程使用不同的ThreadProc()。
我曾嘗試下面的代碼,但使用它,「N」是創建的線程數都執行相同的任務(因爲ThreadProc的()函數自動對焦的所有線程是一樣的。)
//Start the threads
for (int i=1; i<= max_number; i++)
{
CreateThread(NULL, //Choose default security
0, //Default stack size
(LPTHREAD_START_ROUTINE)&ThreadProc,
//Routine to execute. I want this routine to be different each time as I want each thread to perform a different functionality.
(LPVOID) &i, //Thread parameter
0, //Immediately run the thread
&dwThreadId //Thread Id
)
}
有什麼我可以創建'n'數量的線程,每個線程使用不同的線程程序?
呃...將每個指針傳遞給不同的線程程序!恐怕我不明白爲什麼要做這件事很困難,或者你想做什麼。由downvotes判斷,其他人也沒有。你能解釋你想做什麼,爲什麼? – 2013-05-02 07:33:55
@DavidM:「將每個指針傳遞給不同的線程程序!」我認爲這就是我正在尋找:) 非常感謝你:) – Ayse 2013-05-02 07:45:02
哈!不用擔心,很高興它非常簡單:) – 2013-05-03 10:13:48