msg_global = xbt_new0(s_MSG_Global_t, 1);
msg_global->host = xbt_fifo_new();
- msg_global->process_list = xbt_fifo_new();
msg_global->max_channel = 0;
msg_global->PID = 1;
msg_global->sent_msg = 0;
/* initialization of the action module */
_MSG_action_init();
- SIMIX_function_register_process_create(_MSG_process_create_from_SIMIX);
- SIMIX_function_register_process_cleanup(__MSG_process_cleanup);
- SIMIX_function_register_process_kill(_MSG_process_kill_from_SIMIX);
+ SIMIX_function_register_process_create(MSG_process_create_from_SIMIX);
+ SIMIX_function_register_process_cleanup(MSG_process_cleanup_from_SIMIX);
+ SIMIX_function_register_process_kill(MSG_process_kill_from_SIMIX);
}
#ifdef HAVE_TRACING
TRACE_start();
*/
int MSG_process_killall(int reset_PIDs)
{
- m_process_t p = NULL;
- m_process_t self = MSG_process_self();
-
- while ((p = xbt_fifo_pop(msg_global->process_list))) {
- if (p != self)
- MSG_process_kill(p);
- }
+ SIMIX_req_process_killall();
if (reset_PIDs > 0) {
msg_global->PID = reset_PIDs;
{
xbt_fifo_item_t i = NULL;
m_host_t h = NULL;
- m_process_t p = NULL;
#ifdef HAVE_TRACING
TRACE_surf_release();
#endif
- while ((p = xbt_fifo_pop(msg_global->process_list))) {
- MSG_process_kill(p);
- }
+ MSG_process_killall(0);
xbt_fifo_foreach(msg_global->host, i, h, m_host_t) {
__MSG_host_destroy(h);
}
xbt_fifo_free(msg_global->host);
- xbt_fifo_free(msg_global->process_list);
free(msg_global);
msg_global = NULL;
/** \ingroup msg_easier_life
* \brief A clock (in second).
*/
-double MSG_get_clock(void)
+XBT_INLINE double MSG_get_clock(void)
{
return SIMIX_get_clock();
}