INtime SDK Help
WaitForRtIoService
INtime SDK v7.1 > About INtime > INtime Kernel > Status > WaitForRtIoService

Waits for different parts of the IO system to finish initialization.

BOOLEAN WaitForRtIoService(
    DWORD dwFlags,
    DWORD dwMilliseconds
);

Parameters

dwFlags
Specifies flags that determine which events to wait for. Values may be combined where appropriate.
WAIT_FOR_IOPROXY Wait for the user to logon and the inioproxy to initialize for that user.
WAIT_FOR_IOSERVICE Wait for the INtime IO Service to initialize.
dwMilliseconds
The number of milliseconds the calling thread waits:
NO_WAIT The thread does not wait.
WAIT_FOREVER The thread waits for its request to be fully satisfied.
1 to 655349 Calling thread goes to sleep for this many milliseconds, after which it awakes.

Note: The kernel converts milliseconds high-level ticks.

Remarks

The INtime I/O Service responds to requests from RT applications for file and console I/O. If a user is logged in, these requests are forwarded to the INIOProxy for the logged-in user. Otherwise, the I/O Service attempts to fulfill these requests itself.

The INIOProxy process runs at login for each user. It provides standard I/O and also I/O that cannot be provided by the INtime I/O Service. Under Windows services which run as system cannot interact with the desktop so the INIOProxy provides console windows. Likewise, services which run as system cannot access the network, so INIOProxy handles file accesses over the network.

When an INtime kernel starts, it is possible that applications auto-loaded on that kernel will start before the I/O service has been initialized for that kernel. You can specify the WAIT_FOR_IOSERVICE flag to wait for the I/O service to initialize. If you autostart the kernel, it is possible that your applications will run before a user has logged in. You can specify the WAIT_FOR_IOPROXY flag to make your applications wait before trying to access files on the network or before trying to write to consoles.

Return Values

Returns a non-zero value on success. On failure returns 0 and GetLastRtError() may be called to return extended status.

Status

E_OK 0x0000
No exceptional conditions occurred.
E_TIME 0x0001
The timeout elapsed before the desired initialization occurred.

Requirements

Versions Defined in Include Link to
INtime 4.0 intime/rt/include/rtbase.h rt.h rt.lib
   
See Also

Using INtime