next up previous contents
Next: Обработчики ошибок для файлов. Up: Обработчики ошибок Previous: Обработчики ошибок для коммуникаторов   Contents

Обработчики ошибок для окон

MPI_WIN_CREATE_ERRHANDLER(function, errhandler)  
IN function пользовательская процедура обработки ошибки (функция)  
OUT errhandler обработчик ошибок MPI (дескриптор)  
int MPI_Win_create_errhandler(MPI_Win_errhandler_fn *function, MPI_Errhandler *errhandler) MPI_WIN_CREATE_ERRHANDLER(FUNCTION, ERRHANDLER, IERROR) EXTERNAL FUNCTION INTEGER ERRHANDLER, IERROR static MPI::Errhandler MPI::Win::Create_errhandler(MPI::Win::Errhandler_fn* function)

В языке Си пользовательская процедура должна быть функцией типа MPI_Win_errhandler_fn, определенной как
typedef void MPI_Win_errhandler_fn(MPI_Win *, int *, ...);

Первый аргумент - используемое окно, второй - код ошибки, которую следует вернуть.

На ФОРТРАН процедура пользователя должна быть в форме:

SUBROUTINE WIN_ERRHANDLER_FN(WIN, ERROR_CODE, ... ) INTEGER WIN, ERROR_CODE

В С++ функция пользователя должна быть в форме:
typedef void MPI::Win::Errhandler_fn(MPI::Win &, int *, ... );

MPI_WIN_SET_ERRHANDLER(win, errhandler)  
INOUT win окно (дескриптор)  
IN errhandler новый обработчик ошибок для окна (дескриптор)  
int MPI_Win_set_errhandler(MPI_Win win, MPI_Errhandler errhandler) MPI_WIN_SET_ERRHANDLER(WIN, ERRHANDLER, IERROR) INTEGER WIN, ERRHANDLER, IERROR void MPI::Win::Set_errhandler(const MPI::Errhandler& errhandler)

Назначает обработчик ошибок окну. Обработчик должен быть либо стандартным, либо обработчиком, созданным вызовом MPI_WIN_CREATE_ERRHANDLER.

MPI_WIN_GET_ERRHANDLER(win, errhandler)  
IN win окно (дескриптор)  
OUT errhandler текущий обработчик ошибок для окна (дескриптор)  
int MPI_Win_get_errhandler(MPI_Win win, MPI_Errhandler *errhandler) MPI_WIN_GET_ERRHANDLER(WIN, ERRHANDLER, IERROR) INTEGER WIN, ERRHANDLER, IERROR MPI::Errhandler MPI::Win::Get_errhandler() const

Возвращает обработчик ошибок для окна.



Alex Otwagin 2002-12-10