📄 wincall.c
字号:
/* -*- Mode: C; c-basic-offset:4 ; -*- *//* * * (C) 2003 by Argonne National Laboratory. * See COPYRIGHT in top-level directory. */#include "mpi.h"#include <stdio.h>#include "mpitest.h"static char MTEST_Descrip[] = "Test win_call_errhandler";static int calls = 0;static int errs = 0;static MPI_Win mywin;void eh( MPI_Win *win, int *err, ... ){ if (*err != MPI_ERR_OTHER) { errs++; printf( "Unexpected error code\n" ); } if (*win != mywin) { errs++; printf( "Unexpected window\n" ); } calls++; return;}int main( int argc, char *argv[] ){ int buf[2]; MPI_Win win; MPI_Errhandler newerr; MTest_Init( &argc, &argv ); MPI_Win_create( buf, 2*sizeof(int), sizeof(int), MPI_INFO_NULL, MPI_COMM_WORLD, &win ); mywin = win; MPI_Win_create_errhandler( eh, &newerr ); MPI_Win_set_errhandler( win, newerr ); MPI_Win_call_errhandler( win, MPI_ERR_OTHER ); MPI_Errhandler_free( &newerr ); if (calls != 1) { errs++; printf( "Error handler not called\n" ); } MPI_Win_free( &win ); MTest_Finalize( errs ); MPI_Finalize(); return 0;}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -