X-Git-Url: http://info.iut-bm.univ-fcomte.fr/pub/gitweb/simgrid.git/blobdiff_plain/a6842b518fd3973d810bae84ad5110c26b20953b..8c3cc1fe798afef50589651b016317b4d5abb74a:/examples/msg/token_ring/ring_call.c diff --git a/examples/msg/token_ring/ring_call.c b/examples/msg/token_ring/ring_call.c index 06a46488bb..bc270cd1ac 100644 --- a/examples/msg/token_ring/ring_call.c +++ b/examples/msg/token_ring/ring_call.c @@ -4,32 +4,24 @@ /* This program is free software; you can redistribute it and/or modify it * under the terms of the license (GNU LGPL) which comes with this package. */ -#include -#include #include "simgrid/msg.h" -int host(int argc, char *argv[]); -unsigned int task_comp_size = 50000000; -unsigned int task_comm_size = 1000000; - -int nb_hosts; /* All declared hosts */ - -XBT_LOG_NEW_DEFAULT_CATEGORY(ring, - "Messages specific for this msg example"); +XBT_LOG_NEW_DEFAULT_CATEGORY(ring, "Messages specific for this msg example"); /** @addtogroup MSG_examples * * @section MSG_ex_apps Examples of full applications * - * - token_ring/ring_call.c: Classical token ring - * communication, where a token is exchanged along a ring to reach - * every participant. - * + * - token_ring/ring_call.c: Classical token ring communication, where a token is exchanged along a ring to + * reach every participant. */ -int host(int argc, char *argv[]) +static int host(int argc, char *argv[]) { - int host_number = xbt_str_parse_int(MSG_process_get_name(MSG_process_self()), "Process name must be an integer but is: %s"); + unsigned int task_comp_size = 50000000; + unsigned int task_comm_size = 1000000; + int host_number = + xbt_str_parse_int(MSG_process_get_name(MSG_process_self()), "Process name must be an integer but is: %s"); char mailbox[256]; msg_task_t task = NULL; XBT_ATTRIB_UNUSED int res; @@ -43,13 +35,12 @@ int host(int argc, char *argv[]) xbt_assert(res == MSG_OK, "MSG_task_get failed"); XBT_INFO("Host \"%d\" received \"%s\"",host_number, MSG_task_get_name(task)); MSG_task_destroy(task); - } - else{ //slave receive then send + } else{ //slave receive then send res = MSG_task_receive(&(task), MSG_process_get_name(MSG_process_self())); xbt_assert(res == MSG_OK, "MSG_task_get failed"); XBT_INFO("Host \"%d\" received \"%s\"",host_number, MSG_task_get_name(task)); - if(host_number+1 == nb_hosts) + if(host_number+1 == MSG_get_host_number()) sprintf(mailbox, "0"); else sprintf(mailbox, "%d", host_number+1); @@ -61,23 +52,22 @@ int host(int argc, char *argv[]) int main(int argc, char **argv) { - int i,res; + unsigned int i; MSG_init(&argc, argv); MSG_create_environment(argv[1]); xbt_dynar_t hosts = MSG_hosts_as_dynar(); - nb_hosts = xbt_dynar_length(hosts); + msg_host_t h; MSG_function_register("host", host); - XBT_INFO("Number of host '%d'",nb_hosts); - for(i = 0 ; i