當前位置:編程學習大全網 - 源碼破解 - delphi編程:多線程參數傳遞,收不到返回值,為什麽?

delphi編程:多線程參數傳遞,收不到返回值,為什麽?

Createthread(nil, 0, @MyThreadFun, @p, 0, Id); // 創建線程,註意這裏不是阻塞的,啟動線程後就直接執行下壹句代碼了

memo1.Text:=som; // 執行時上面那個線程可能還沒執行結束

妳可以理解為,線程中的代碼和 memo1這句是同時執行的,所以som的結果並不可預知

thread := Createthread(nil, 0, @MyThreadFun, @p, 0, Id);

WaitForSingleObject(thread) // 等待線程執行結束

memo1.Text:=som; // 這樣就對了,但失去了多線程的意義

  • 上一篇:如何網上看到的?
  • 下一篇:貓人睡衣屬於什麽檔次品牌
  • copyright 2024編程學習大全網