PreviousNext

Operation Attributes: Execution Semantics

The idempotent attribute specifies that an operation is idempotent; that is, it can safely be executed more than once.

The broadcast attribute specifies that an operation is to be broadcast to all hosts on the local network each time the operation is called. The client receives output arguments from the first reply to return successfully, and all subsequent replies are discarded.

An operation with the broadcast attribute is implicitly idempotent.

Note that the broadcast capabilities of RPC runtime have a number of distinct limitations:

· Not all systems and networks support broadcasting. In particular, broadcasting is not supported by the RPC connection-oriented protocol.

· Broadcasts are limited to hosts on the local network.

· Broadcasts make inefficient use of network bandwidth and processor cycles.

· The RPC runtime library does not support at-most-once semantics for broadcast operations; it applies idempotent semantics to all such operations.

· The input arguments for broadcast calls are limited to 944 bytes.

The maybe attribute specifies that the caller of an operation does not expect any response. An operation with the maybe attribute cannot have any output parameters and cannot return anything. Delivery of the call is not guaranteed.

An operation with the maybe attribute is implicitly idempotent.