DELPHI WAITFORSINGLEOBJECT ПРИМЕР

Одним из способов синхронизации потоков в Delphi является использование функции WaitForSingleObject, которая блокирует выполнение текущего потока до тех пор, пока указанный объект синхронизации не станет сигнальным.

Первым параметром функции WaitForSingleObject является дескриптор ожидаемого объекта, а второй - время ожидания в миллисекундах:

var hEvent: THandle;begin hEvent := CreateEvent(nil, True, False, nil); if hEvent <> 0 then begin // ждем события не более 1 секунды if WaitForSingleObject(hEvent, 1000) = WAIT_OBJECT_0 then ShowMessage('Событие произошло') else ShowMessage('Произошел таймаут'); CloseHandle(hEvent); end;end;

В данном примере создается событие hEvent, которое не является сигнальным. Затем функция WaitForSingleObject ожидает до 1 секунды, пока это событие не станет сигнальным. Если ожидание закончится успешно, выводится сообщение "Событие произошло". Если же произойдет таймаут, выводится сообщение "Произошел таймаут".

Login form Delphi

C++ : WaitForSingleObject with thread handle get stuck while running delphi-hlp.ru

C++ : Waiting on a condition (pthread_cond_wait) and a socket change (select) simultaneously

Delphi #171 - Telnet

TTreeNodes and how to use them with Delphi

Windows : WaitForSingleObject on a file handle?

First look at Delphi 10.4.2 on Windows 11 ARM \u0026 macOS 12 ARM

Реклама
Новое
Реклама