cd_Wait_for_event
BOOL cd_Wait_for_event(cdp_t cdp, sig32 timeout, uns32 * event_handle, uns32 * event_count, const char * param_str, sig32 param_size, sig32 * result);
function cd_Wait_for_event(cdp : cdp_t; timeout : sig32; var event_handle, event_count : uns32; param_str : PChar; param_size : sig32; var result : sig32) : Boolean;
Parametry
-
cdp
-
kontextová proměnná klienta
-
timeout
- maximální čas čekání v milisekundách, 0 nečekat vůbec, -1 čekat neomezeně dlouho
-
event_handle
- výstupní parametr: handle nastalé události
-
event_count
- výstupní parametr: počet výskytů nastalé události s vrácenými parametry
-
param_str
- výstupní parametr: parametry nastalé události
-
param_size
- velikost prostoru pro parametry události param_str
-
result
- výstupní parametr: výsledek čekání
Od verze
8.0a
Popis
Funkce čeká na výskyt kterékoliv události zaregistrované klientem. Pokud klient má více spojení na server, lze čekat pouze na události zaregistrované ve stejném spojení.
Funkce skončí v těchto případech:
- událost nastala (v result vrátí WAIT_EVENT_OK),
- vypršel časový limit pro čekání (v result vrátí WAIT_EVENT_TIMEOUT),
- čekání bylo zrušeno voláním funkce Cancel_event_wait (v result vrátí WAIT_EVENT_CANCELLED),
- SQL server končí práci nebo vynucené ukončení vlákna z Řídicího panelu v okně Monitor nebo funkcí Operation_limits (v result vrátí WAIT_EVENT_SHUTDOWN),
- událost nastala, ale buffer param_str není dost velký pro vrácení parametrů (v result vrátí WAIT_EVENT_ERROR_BUFFER_SIZE),
- došlo k nespecifické chybě - v současnosti nevyužito (v result vrátí WAIT_EVENT_ERROR),
- událost nenastala, ale timeout čekání je nastaven na nulu (v result vrátí WAIT_EVENT_NOT_SIG).
Hodnoty ostatních výstupních parametrů jsou definovány pouze tehdy, pokud událost nastala.
Návratová hodnota
Funkce vrací FALSE při úspěchu a TRUE při chybě.
Viz