- 01
- 02
- 03
- 04
- 05
- 06
- 07
- 08
- 09
- 10
- 11
- 12
- 13
- 14
if not MultiThread then
begin
GetName(@rec);
result:=rec.fname;
end
else
begin
hThread:=CreateThread(0,0,@GetName,@rec,0,tmp);
if WaitForSingleObject(hThread,100)=WAIT_TIMEOUT then
TerminateThread(hThread,0)
else
result:=rec.fname;
CloseHandle(hThread);
end;
Morgoth 10.10.2018 14:38 # +2
cmepmop 12.06.2019 22:07 # 0
bormand 12.06.2019 22:36 # 0
Плохой способ, кстати. После TerminateThread() ресурсы, захваченные потоком не освобождаются. Какую-нибудь лочку в менеджере памяти заклинит - и приехали. Пиздец всей проге.
DOKTOPuHXO 10.10.2018 14:50 # 0
DOKTOPuHXO 10.10.2018 14:51 # +2
guest8 12.06.2019 15:17 # −999
guest8 12.06.2019 16:53 # −999
guest8 12.06.2019 18:11 # −999
bormand 12.06.2019 22:40 # 0
TOPT 13.06.2019 06:04 # 0
guest8 23.09.2019 22:46 # −999
guest8 26.09.2019 20:38 # −999