Allows a task to cancel messages to a given destination.
Availability Library (liblapi_r.a)
#include <lapi.h>
int LAPI_Purge_totask(hndl, dest)
lapi_handle_t hndl;
uint dest;
include 'lapif.h'
int LAPI_PURGE_TOTASK(hndl, dest, ierror)
INTEGER hndl
INTEGER dest
INTEGER ierror
Type of call: recovery
This subroutine cancels messages and resets the state corresponding to messages in flight or submitted to be sent to a particular target task. This is an entirely local operation. For correct behavior a similar invocation is expected on the destination (if it exists). This function cleans up all the state associated with pending messages to the indicated target task. It is assumed that before the indicated task starts communicating with this task again, it also purges this instance (or that it was terminated and initialized again). It will also wake up all threads that are in LAPI_Nopoll_wait depending on how the arguments are passed to the LAPI_Nopoll_wait function. The behavior of LAPI_Purge_totask is undefined if LAPI collective functions are used.
Note: This subroutine should not be used when the parallel application is running in a PE/LoadLeveler environment.
LAPI_Purge_totask is normally used after connectivity has been lost between two tasks. If connectivity is restored, the tasks can restored for LAPI communication by calling LAPI_Resume_totask.
Use of this subroutine is not recommended on a system that is running Parallel Environment (PE).