X-Git-Url: http://info.iut-bm.univ-fcomte.fr/pub/gitweb/simgrid.git/blobdiff_plain/9f227dab539a56b04a5c3ab15d4a7035db9c6cd5..4dcdf4c43798ec5cfd6393c51768330cf5dfeb1d:/src/simix/smx_process.c diff --git a/src/simix/smx_process.c b/src/simix/smx_process.c index c698c7ca61..86422fd2cb 100644 --- a/src/simix/smx_process.c +++ b/src/simix/smx_process.c @@ -284,8 +284,8 @@ void SIMIX_process_kill(smx_process_t process) { break; case SIMIX_ACTION_IO: - THROW_UNIMPLEMENTED; - break; + SIMIX_io_destroy(process->waiting_action); + break; } } @@ -644,7 +644,21 @@ void SIMIX_process_set_context(smx_process_t p,smx_context_t c) { /** * \brief Returns the list of processes to run. */ -XBT_INLINE xbt_dynar_t SIMIX_process_get_runnable(void) +xbt_dynar_t SIMIX_process_get_runnable(void) { return simix_global->process_to_run; } + +/** + * \brief Returns the process from PID. + */ +smx_process_t SIMIX_process_from_PID(int PID) +{ + smx_process_t proc; + xbt_swag_foreach(proc, simix_global->process_list) + { + if(proc->pid == PID) + return proc; + } + return NULL; +}