ActorPtr Actor::forPid(int pid) { smx_actor_t process = SIMIX_process_from_PID(pid); if (process != nullptr) return ActorPtr(&process->getIface()); else return nullptr; }
void Actor::kill(int pid) { msg_process_t process = SIMIX_process_from_PID(pid); if(process != nullptr) { simcall_process_kill(process); } else { std::ostringstream oss; oss << "kill: ("<< pid <<") - No such process" << std::endl; throw std::runtime_error(oss.str()); } }
/** \ingroup m_process_management * * \brief Return a #msg_process_t given its PID. * * This function search in the list of all the created msg_process_t for a msg_process_t whose PID is equal to \a PID. * If no host is found, \c nullptr is returned. Note that the PID are uniq in the whole simulation, not only on a given host. */ msg_process_t MSG_process_from_PID(int PID) { return SIMIX_process_from_PID(PID); }