X-Git-Url: http://info.iut-bm.univ-fcomte.fr/pub/gitweb/simgrid.git/blobdiff_plain/82f048773df5d2086fe2044d2bef0cbffdf6f982..cf944399509e0838e40a3fab1cd566329ecefff4:/examples/simdag/availability/sd_availability.c diff --git a/examples/simdag/availability/sd_availability.c b/examples/simdag/availability/sd_availability.c index f966a04741..c6c053a1d9 100644 --- a/examples/simdag/availability/sd_availability.c +++ b/examples/simdag/availability/sd_availability.c @@ -39,13 +39,9 @@ XBT_LOG_NEW_DEFAULT_CATEGORY(sd_avail, "Logging specific to this SimDag example" int main(int argc, char **argv) { - unsigned int ctr; - SD_task_t task; - xbt_dynar_t changed_tasks; - SD_init(&argc, argv); SD_create_environment(argv[1]); - const sg_host_t *hosts = sg_host_list(); + sg_host_t *hosts = sg_host_list(); SD_task_t t1 = SD_task_create_comp_seq("t1", NULL, 25000000); SD_task_t c1 = SD_task_create_comm_e2e("c1", NULL, 125000000); @@ -79,11 +75,17 @@ int main(int argc, char **argv) SD_task_watch(c3, SD_DONE); SD_task_watch(t4, SD_DONE); - while (!xbt_dynar_is_empty((changed_tasks = SD_simulate(-1.0)))) { + while (1) { + xbt_dynar_t changed_tasks = SD_simulate(-1.0); + if (xbt_dynar_is_empty(changed_tasks)) + break; XBT_INFO("link1: bw=%.0f, lat=%f", SD_route_get_bandwidth(hosts[0], hosts[1]), SD_route_get_latency(hosts[0], hosts[1])); XBT_INFO("Jupiter: speed=%.0f", sg_host_speed(hosts[0])* sg_host_get_available_speed(hosts[0])); XBT_INFO("Tremblay: speed=%.0f", sg_host_speed(hosts[1])* sg_host_get_available_speed(hosts[1])); + + unsigned int ctr; + SD_task_t task; xbt_dynar_foreach(changed_tasks, ctr, task) { XBT_INFO("Task '%s' start time: %f, finish time: %f", SD_task_get_name(task), SD_task_get_start_time(task), SD_task_get_finish_time(task)); @@ -92,5 +94,6 @@ int main(int argc, char **argv) } } SD_exit(); + xbt_free(hosts); return 0; }