Thred 錯誤之請益 |
答題得分者是:GrandRURU
|
it1506
初階會員 發表:32 回覆:89 積分:49 註冊:2011-02-16 發送簡訊給我 |
我有個按紐 TThread.CreateAnonymousThread( procedure var x:Integer; begin for x := 0 to 10000 do begin edtmsg.Text:=IntToStr(x); Application.ProcessMessages; end; end).Start; 執行會出現First chance exception at $76E1B727. Exception class EAccessViolation with message 'Access violation at address 714179C9 in module 'comctl32.dll'. Read of address 00000000'. Process Project1.exe (2104) 為什麼會這樣呢?? 一個很普通的回圈而已啊. |
GrandRURU
站務副站長 發表:240 回覆:1680 積分:1874 註冊:2005-06-21 發送簡訊給我 |
Synchronize的問題
這種方式適合使用在有提供Lock功能的物件,如Canvas等 你如果使用在其它無Lock功能的物件,就必須採用傳統建立Thread的方法 Synchronize處理 万老師的博客 http://www.cnblogs.com/del/archive/2011/05/18/2049913.html ===================引 用 it1506 文 章=================== 我有個按紐 TThread.CreateAnonymousThread( procedure var x:Integer; begin for x := 0 to 10000 do begin edtmsg.Text:=IntToStr(x); Application.ProcessMessages; end; end).Start; 執行會出現First chance exception at $76E1B727. Exception class EAccessViolation with message 'Access violation at address 714179C9 in module 'comctl32.dll'. Read of address 00000000'. Process Project1.exe (2104) 為什麼會這樣呢?? 一個很普通的回圈而已啊. |
it1506
初階會員 發表:32 回覆:89 積分:49 註冊:2011-02-16 發送簡訊給我 |
本站聲明 |
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。 2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。 3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇! |