⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 oob_base_except.c

📁 MPI stands for the Message Passing Interface. Written by the MPI Forum (a large committee comprising
💻 C
字号:
/* * Copyright (c) 2004-2005 The Trustees of Indiana University and Indiana *                         University Research and Technology *                         Corporation.  All rights reserved. * Copyright (c) 2004-2005 The University of Tennessee and The University *                         of Tennessee Research Foundation.  All rights *                         reserved. * Copyright (c) 2004-2005 High Performance Computing Center Stuttgart, *                         University of Stuttgart.  All rights reserved. * Copyright (c) 2004-2005 The Regents of the University of California. *                         All rights reserved. * $COPYRIGHT$ * * Additional copyrights may follow * * $HEADER$ */                                                                                                                                                                                                                                  #include "orte_config.h"#include "orte/orte_constants.h"#include "opal/mca/mca.h"#include "opal/mca/base/base.h"#include "orte/mca/oob/oob.h"OBJ_CLASS_INSTANCE(    mca_oob_base_exception_handler_t,    opal_list_item_t,    NULL,    NULL);/** *  Register a callback function on loss of a connection. */                                                                                                                 int mca_oob_add_exception_handler(    mca_oob_base_exception_fn_t cbfunc){    mca_oob_base_exception_handler_t *eh = OBJ_NEW(mca_oob_base_exception_handler_t);    eh->cbfunc = cbfunc;    opal_list_append(&mca_oob_base_exception_handlers, &eh->super);    return ORTE_SUCCESS;}                                                                                                                 /** * Remove a callback */                                                                                                                 int mca_oob_del_exception_handler(    mca_oob_base_exception_fn_t cbfunc){    opal_list_item_t* item;    item = opal_list_get_first(&mca_oob_base_exception_handlers);    while(item != opal_list_get_end(&mca_oob_base_exception_handlers)) {        opal_list_item_t* next = opal_list_get_next(item);        mca_oob_base_exception_handler_t* eh = (mca_oob_base_exception_handler_t*)item;        if(eh->cbfunc == cbfunc) {            opal_list_remove_item(&mca_oob_base_exception_handlers, &eh->super);            OBJ_RELEASE(eh);        }        item = next;    }    return ORTE_SUCCESS;}/** * Invoke exception handlers */                                                                                                                 void mca_oob_call_exception_handlers(    orte_process_name_t* peer, int exception){    opal_list_item_t* item;    item = opal_list_get_first(&mca_oob_base_exception_handlers);    while(item != opal_list_get_end(&mca_oob_base_exception_handlers)) {        opal_list_item_t* next = opal_list_get_next(item);        mca_oob_base_exception_handler_t* eh = (mca_oob_base_exception_handler_t*)item;        eh->cbfunc(peer,exception);        item = next;    }}                                                                                                                 

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -