当前位置: 首页>>代码示例>>C++>>正文


C++ OPAL_LIST_DESTRUCT函数代码示例

本文整理汇总了C++中OPAL_LIST_DESTRUCT函数的典型用法代码示例。如果您正苦于以下问题:C++ OPAL_LIST_DESTRUCT函数的具体用法?C++ OPAL_LIST_DESTRUCT怎么用?C++ OPAL_LIST_DESTRUCT使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。


在下文中一共展示了OPAL_LIST_DESTRUCT函数的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。

示例1: orte_get_proc_node_rank

orte_node_rank_t orte_get_proc_node_rank(orte_process_name_t *proc)
{
    orte_proc_t *proct;
    orte_node_rank_t noderank;
    int rc;
    opal_list_t myvals;
    opal_value_t *kv;

    if (ORTE_PROC_IS_DAEMON || ORTE_PROC_IS_HNP) {
        /* look it up on our arrays */
        if (NULL == (proct = orte_get_proc_object(proc))) {
            ORTE_ERROR_LOG(ORTE_ERR_NOT_FOUND);
            return ORTE_NODE_RANK_INVALID;
        }
        return proct->node_rank;
    }

    /* if we are an app, get the value from the modex db */
    OBJ_CONSTRUCT(&myvals, opal_list_t);
    if (ORTE_SUCCESS != (rc = opal_dstore.fetch(opal_dstore_internal,
                                                (opal_identifier_t*)proc,
                                                OPAL_DSTORE_NODERANK,
                                                &myvals))) {
        ORTE_ERROR_LOG(rc);
        OPAL_LIST_DESTRUCT(&myvals);
        return ORTE_NODE_RANK_INVALID;
    }
    kv = (opal_value_t*)opal_list_get_first(&myvals);
    noderank = kv->data.uint16;
    OPAL_LIST_DESTRUCT(&myvals);
    return noderank;
}
开发者ID:Greatrandom,项目名称:ompi,代码行数:32,代码来源:orte_globals.c

示例2: external_close

static int external_close(void)
{
    OPAL_LIST_DESTRUCT(&mca_pmix_pmix2x_component.jobids);
    OPAL_LIST_DESTRUCT(&mca_pmix_pmix2x_component.events);
    OPAL_LIST_DESTRUCT(&mca_pmix_pmix2x_component.dmdx);
    return OPAL_SUCCESS;
}
开发者ID:bharatpotnuri,项目名称:ompi,代码行数:7,代码来源:pmix2x_component.c

示例3: external_close

static int external_close(void)
{
    OPAL_LIST_DESTRUCT(&mca_pmix_pmix2x_component.jobids);
    OPAL_LIST_DESTRUCT(&mca_pmix_pmix2x_component.single_events);
    OPAL_LIST_DESTRUCT(&mca_pmix_pmix2x_component.multi_events);
    OPAL_LIST_DESTRUCT(&mca_pmix_pmix2x_component.default_events);
    OPAL_LIST_DESTRUCT(&mca_pmix_pmix2x_component.cache);
    return OPAL_SUCCESS;
}
开发者ID:amckinstry,项目名称:ompi,代码行数:9,代码来源:pmix2x_component.c

示例4: finalize

static int finalize(void)
{
    /* cleanup the proc state machine */
    OPAL_LIST_DESTRUCT(&orte_proc_states);
    /* cleanup the job state machine */
    OPAL_LIST_DESTRUCT(&orte_job_states);

    return ORTE_SUCCESS;
}
开发者ID:davideberius,项目名称:ompi,代码行数:9,代码来源:state_hnp.c

示例5: pmix_native_close

static int pmix_native_close(void)
{
    if (NULL != mca_pmix_native_component.uri) {
        free(mca_pmix_native_component.uri);
    }
    OPAL_LIST_DESTRUCT(&mca_pmix_native_component.send_queue);
    OPAL_LIST_DESTRUCT(&mca_pmix_native_component.posted_recvs);
    return OPAL_SUCCESS;
}
开发者ID:Greatrandom,项目名称:ompi,代码行数:9,代码来源:pmix_native_component.c

示例6: vprotocol_pessimist_event_logger_connect

int vprotocol_pessimist_event_logger_connect(int el_rank, ompi_communicator_t **el_comm)
{
    int rc;
    char *port;
    int rank;
    vprotocol_pessimist_clock_t connect_info[2];
    opal_list_t results;
    opal_pmix_pdata_t *pdat;

    OBJ_CONSTRUCT(&results, opal_list_t);
    pdat = OBJ_NEW(opal_pmix_pdata_t);
    opal_asprintf(&pdat->value.key, VPROTOCOL_EVENT_LOGGER_NAME_FMT, el_rank);
    opal_list_append(&results, &pdat->super);

    rc = opal_pmix.lookup(&results, NULL);
    if (OPAL_SUCCESS != rc ||
        OPAL_STRING != pdat->value.type ||
        NULL == pdat->value.data.string) {
        OPAL_LIST_DESTRUCT(&results);
        return OMPI_ERR_NOT_FOUND;
    }
    port = strdup(pdat->value.data.string);
    OPAL_LIST_DESTRUCT(&results);
    V_OUTPUT_VERBOSE(45, "Found port < %s >", port);

    rc = ompi_dpm_connect_accept(MPI_COMM_SELF, 0, port, true, el_comm);
    if(OMPI_SUCCESS != rc) {
        OMPI_ERROR_LOG(rc);
    }

    /* Send Rank, receive max buffer size and max_clock back */
    rank = ompi_comm_rank(&ompi_mpi_comm_world.comm);
    rc = mca_pml_v.host_pml.pml_send(&rank, 1, MPI_INTEGER, 0,
                                     VPROTOCOL_PESSIMIST_EVENTLOG_NEW_CLIENT_CMD,
                                     MCA_PML_BASE_SEND_STANDARD,
                                     mca_vprotocol_pessimist.el_comm);
    if(OPAL_UNLIKELY(MPI_SUCCESS != rc))
        OMPI_ERRHANDLER_INVOKE(mca_vprotocol_pessimist.el_comm, rc,
                               __FILE__ ": failed sending event logger handshake");
    rc = mca_pml_v.host_pml.pml_recv(&connect_info, 2, MPI_UNSIGNED_LONG_LONG,
                                     0, VPROTOCOL_PESSIMIST_EVENTLOG_NEW_CLIENT_CMD,
                                     mca_vprotocol_pessimist.el_comm, MPI_STATUS_IGNORE);
    if(OPAL_UNLIKELY(MPI_SUCCESS != rc))                                  \
        OMPI_ERRHANDLER_INVOKE(mca_vprotocol_pessimist.el_comm, rc,       \
                               __FILE__ ": failed receiving event logger handshake");

    return rc;
}
开发者ID:ICLDisco,项目名称:ompi,代码行数:48,代码来源:vprotocol_pessimist_eventlog.c

示例7: imdes

static void imdes(orcm_pvsn_image_t *p)
{
    if (NULL != p->name) {
        free(p->name);
    }
    OPAL_LIST_DESTRUCT(&p->attributes);
}
开发者ID:noahv,项目名称:orcm,代码行数:7,代码来源:pvsn_base_frame.c

示例8: peer_des

static void peer_des(mca_oob_usock_peer_t *peer)
{
    if (0 <= peer->sd) {
        CLOSE_THE_SOCKET(peer->sd);
    }
    OPAL_LIST_DESTRUCT(&peer->send_queue);
}
开发者ID:Dissolubilis,项目名称:ompi-svn-mirror,代码行数:7,代码来源:oob_usock_component.c

示例9: queue_des

static void queue_des(orcm_queue_t *q)
{
    if (NULL != q->name) {
        free(q->name);
    }
    OPAL_LIST_DESTRUCT(&q->sessions);
}
开发者ID:htquach,项目名称:gemeter,代码行数:7,代码来源:scd_base_frame.c

示例10: sess_des

static void sess_des(orcm_session_t *s)
{
    if (NULL != s->alloc) {
        OBJ_RELEASE(s->alloc);
    }
    OPAL_LIST_DESTRUCT(&s->steps);
}
开发者ID:htquach,项目名称:gemeter,代码行数:7,代码来源:scd_base_frame.c

示例11: cray_get

static int cray_get(const opal_process_name_t *id, const char *key, opal_value_t **kv)
{
    int rc;
    opal_list_t vals;

    opal_output_verbose(2, opal_pmix_base_framework.framework_output,
                        "%s pmix:cray getting value for proc %s key %s",
                        OPAL_NAME_PRINT(OPAL_PROC_MY_NAME),
                        OPAL_NAME_PRINT(*id), key);

    OBJ_CONSTRUCT(&vals, opal_list_t);
    rc = opal_pmix_base_fetch(id, key, &vals);
    if (OPAL_SUCCESS == rc) {
        *kv = (opal_value_t*)opal_list_remove_first(&vals);
        return OPAL_SUCCESS;
    } else {
        opal_output_verbose(2, opal_pmix_base_framework.framework_output,
                "%s pmix:cray fetch from dstore failed: %d",
                OPAL_NAME_PRINT(OPAL_PROC_MY_NAME), rc);
    }
    OPAL_LIST_DESTRUCT(&vals);

    return rc;

}
开发者ID:Prakashacin24,项目名称:ompi,代码行数:25,代码来源:pmix_cray.c

示例12: qdes

static void qdes(opal_pmix_query_t *p)
{
    if (NULL != p->keys) {
        opal_argv_free(p->keys);
    }
    OPAL_LIST_DESTRUCT(&p->qualifiers);
}
开发者ID:bgoglin,项目名称:ompi,代码行数:7,代码来源:pmix_base_frame.c

示例13: wkstep_des

static void wkstep_des(orcm_workflow_step_t *p)
{
    OPAL_LIST_DESTRUCT(&p->attributes);
    if (NULL != p->analytic) {
        free(p->analytic);
    }
}
开发者ID:kwangiit,项目名称:orcm,代码行数:7,代码来源:analytics_base_frame.c

示例14: orte_node_destruct

static void orte_node_destruct(orte_node_t* node)
{
    int i;
    orte_proc_t *proc;

    if (NULL != node->name) {
        free(node->name);
        node->name = NULL;
    }

    if (NULL != node->daemon) {
        node->daemon->node = NULL;
        OBJ_RELEASE(node->daemon);
        node->daemon = NULL;
    }
    
    for (i=0; i < node->procs->size; i++) {
        if (NULL != (proc = (orte_proc_t*)opal_pointer_array_get_item(node->procs, i))) {
            opal_pointer_array_set_item(node->procs, i, NULL);
            OBJ_RELEASE(proc);
        }
    }
    OBJ_RELEASE(node->procs);
    
    /* do NOT destroy the topology */

    /* release the attributes */
    OPAL_LIST_DESTRUCT(&node->attributes);
}
开发者ID:Greatrandom,项目名称:ompi,代码行数:29,代码来源:orte_globals.c

示例15: orte_schizo_base_close

static int orte_schizo_base_close(void)
{
    /* cleanup globals */
    OPAL_LIST_DESTRUCT(&orte_schizo_base.active_modules);

    return mca_base_framework_components_close(&orte_schizo_base_framework, NULL);
}
开发者ID:AT95,项目名称:ompi,代码行数:7,代码来源:schizo_base_frame.c


注:本文中的OPAL_LIST_DESTRUCT函数示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。