Starts a non-blocking send with a datatype.
a0tError a0ISend( | | | |
| a0tPort | *port, | |
| int | dest, | |
| int | tag, | |
| a0tRequest | *request, | |
| a0tDatatype | datatype, | |
| void | *address, | |
| int | count );
| |
Name | rd/wr | Description |
port | read | Port to send to (on destination node). |
dest | read | Destination node to send to. |
tag | read | tag to use. |
request | write | Request descriptor to hold the status. |
datatype | read | Datatype of the data to send. |
address | write | Address of the data to send. |
count | read | Number of elements to send. |
This function starts a non-blocking send to a given port port on a given node dest, with a given tag tag. It posts a request to send a message described by datatype.
The sent data cannot be modified before the completion of the request.
If a NULL is passed as request, no structures are kept after the request completion, so it cannot be tested or waited later. It is supposed that the program has other means to find out if the request has ended, as for example, a subsequent request.
On return of this function, the variable pointed by request contains an opaque request that can be used later to test or wait the completion status of the send operation.
Error Code | Description |
A0Err...Some error occurred. | |
A0ErrOkSuccessful completion. | |
a0Send() a0IReceive() a0Receive() a0ISendBuffer() a0_DATATYPES