oracular (3) MPI_Win_create_errhandler.openmpi.3.gz

Provided by: openmpi-doc_4.1.6-13.3ubuntu2_all bug

NAME

       MPI_Win_create_errhandler - Creates an error handler for a window.

SYNTAX

C Syntax

       #include <mpi.h>
       int MPI_Win_create_errhandler(MPI_Win_errhandler_function *function,
            MPI_Errhandler *errhandler)

Fortran Syntax

       USE MPI
       ! or the older form: INCLUDE 'mpif.h'
       MPI_WIN_CREATE_ERRHANDLER(FUNCTION, ERRHANDLER, IERROR)
            EXTERNAL FUNCTION
            INTEGER ERRHANDLER, IERROR

Fortran 2008 Syntax

       USE mpi_f08
       MPI_Win_create_errhandler(win_errhandler_fn, errhandler, ierror)
            PROCEDURE(MPI_Win_errhandler_function) :: win_errhandler_fn
            TYPE(MPI_Errhandler), INTENT(OUT) :: errhandler
            INTEGER, OPTIONAL, INTENT(OUT) :: ierror

C++ Syntax

       #include <mpi.h>
       static MPI::Errhandler MPI::Win::Create_errhandler(MPI::Win::
            errhandler_function* function)

DEPRECATED TYPE NAME NOTE

       MPI-2.2   deprecated   the   MPI_Win_errhandler_fn   and   MPI::Win::Errhandler_fn   types  in  favor  of
       MPI_Win_errhandler_function and MPI::Win::Errhandler_function,  respectively.   Open  MPI  supports  both
       names (indeed, the _fn names are typedefs to the _function names).

INPUT PARAMETER

       function  User-defined error-handling procedure (function).

OUTPUT PARAMETERS

       errhandler
                 MPI error handler (handle).

       IERROR    Fortran only: Error status (integer).

DESCRIPTION

       MPI_Win_create_errhandler  should  be,  in  C,  a  function of type MPI_Win_errhandler_function, which is
       defined as

       typedef void MPI_Win_errhandler_function(MPI Win *, int *, ...);

       The first argument is the window in use, the second is the error code to be returned.

       In Fortran, the user routine should be of the form:

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

       In C++, the user routine should be of the form:

       typedef void MPI::Win::errhandler_function(MPI::Win &, int *, ...);

ERRORS

       Almost all MPI routines return an error value; C routines as  the  value  of  the  function  and  Fortran
       routines in the last argument. C++ functions do not return errors. If the default error handler is set to
       MPI::ERRORS_THROW_EXCEPTIONS, then on error the  C++  exception  mechanism  will  be  used  to  throw  an
       MPI::Exception object.

       Before  the  error  value  is  returned,  the current MPI error handler is called. By default, this error
       handler aborts the MPI job, except for I/O function  errors.  The  error  handler  may  be  changed  with
       MPI_Win_set_errhandler;  the predefined error handler MPI_ERRORS_RETURN may be used to cause error values
       to be returned. Note that MPI does not guarantee that an MPI program can continue past an error.