X-Git-Url: http://info.iut-bm.univ-fcomte.fr/pub/gitweb/simgrid.git/blobdiff_plain/e34aedcc066725448eee18de1aea881fd6697ba1..8cfd4f9b786027431b78a9b74db0843634ab7397:/src/msg/msg_process.cpp?ds=sidebyside diff --git a/src/msg/msg_process.cpp b/src/msg/msg_process.cpp index 3a82a9add1..3d637e466c 100644 --- a/src/msg/msg_process.cpp +++ b/src/msg/msg_process.cpp @@ -11,6 +11,11 @@ XBT_LOG_NEW_DEFAULT_SUBCATEGORY(msg_process, msg, "Logging specific to MSG (process)"); +std::string instr_pid(msg_process_t proc) +{ + return std::string(proc->get_cname()) + "-" + std::to_string(proc->get_pid()); +} + /** @addtogroup m_process_management * * Processes (#msg_process_t) are independent agents that can do stuff on their own. They are in charge of executing @@ -40,7 +45,7 @@ void MSG_process_cleanup_from_SIMIX(smx_actor_t smx_actor) } if (TRACE_actor_is_enabled()) - simgrid::instr::Container::byName(instr_pid(smx_actor->ciface()))->removeFromParent(); + simgrid::instr::Container::by_name(instr_pid(smx_actor->ciface()))->remove_from_parent(); // free the data if a function was provided if (msg_actor && msg_actor->data && msg_global->process_data_cleanup) { @@ -153,8 +158,7 @@ msg_process_t MSG_process_create_from_stdfunc(const char* name, std::functionciface()->on_exit((int_f_pvoid_pvoid_t)TRACE_msg_process_kill, process); + MSG_process_yield(); return process->ciface(); } @@ -181,7 +185,7 @@ msg_process_t MSG_process_attach(const char *name, void *data, msg_host_t host, SIMIX_process_attach(name, new simgrid::msg::ActorExt(data), host->get_cname(), &props, nullptr); if (not process) xbt_die("Could not attach"); - process->ciface()->on_exit((int_f_pvoid_pvoid_t)TRACE_msg_process_kill, process); + MSG_process_yield(); return process->ciface(); }