-/* $Id$ */
-
/* Copyright (c) 2009 The SimGrid team. All rights reserved. */
/* This program is free software; you can redistribute it and/or modify it
while (1){ // I am an eternal emigrant
MSG_task_receive(&(task), "master_mailbox");
destination = (char*)MSG_task_get_data (task);
+ MSG_task_destroy (task);
if (!destination) break; //there is no destination, die
- XBT_INFO("Migrating to %s", destination);
MSG_process_migrate(MSG_process_self(), MSG_get_host_by_name(destination));
MSG_process_sleep(2); // I am tired, have to sleep for 2 seconds
- MSG_task_destroy (task);
+ free (destination);
task = NULL;
}
return 0;
/** Main function */
int main(int argc, char *argv[])
{
- MSG_error_t res = MSG_OK;
-
/* Argument checking */
MSG_global_init(&argc, argv);
if (argc < 3) {
XBT_CRITICAL("Usage: %s platform_file deployment_file\n", argv[0]);
- XBT_CRITICAL("example: %s msg_platform.xml msg_deployment_suspend.xml\n",
- argv[0]);
exit(1);
}
- /* Simulation setting */
- MSG_create_environment(argv[1]);
+ char *platform_file = argv[1];
+ char *deployment_file = argv[2];
+ MSG_create_environment(platform_file);
TRACE_category ("migration_order");
/* Application deployment */
MSG_function_register("emigrant", emigrant);
MSG_function_register("master", master);
- MSG_launch_application(argv[2]);
-
- /* Run the simulation */
- res = MSG_main();
- XBT_INFO("Simulation time %g", MSG_get_clock());
- if (res == MSG_OK)
- res = MSG_clean();
+ MSG_launch_application(deployment_file);
- if (res == MSG_OK)
- return 0;
- else
- return 1;
+ MSG_main();
+ MSG_clean();
+ return 0;
} /* end_of_main */