## Synchronous Operations

Since asynchronous use of the interface (within the same thread) is not supported, the value of the DS_ASYNCHRONOUS OM attribute in DS_C_CONTEXT is always OM_FALSE, causing all operations within the same thread to be synchronous.

In synchronous mode, all functions wait until the operation is complete before returning. The thread of control is blocked within the interface after calling a function, and it can use the result immediately after the function returns.

Implementations define a limit on the number of asynchronous operations that can be outstanding at any one time on any one session. The limit is given by the implementation-defined constant DS_MAX_OUTSTANDING_OPERATIONS. It always has the value 0 (zero) because asynchronous operations within the same thread are not supported.

All errors occurring during a synchronous request are reported when the function returns. (See XDS Class Definitions for complete details of error handling.)

The DS_FILE_DESCRIPTOR OM attribute of DS_C_SESSION is not used by the DCE XDS API and is always set to DS_NO_VALID_FILE_DESCRIPTOR.

##