From: alegrand Date: Tue, 29 Mar 2005 23:49:23 +0000 (+0000) Subject: adding a getpid function X-Git-Tag: v3.3~4167 X-Git-Url: http://info.iut-bm.univ-fcomte.fr/pub/gitweb/simgrid.git/commitdiff_plain/912a9ae1e7d165713255d17b216500188057ecea adding a getpid function git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/simgrid/simgrid/trunk@1187 48e7efb5-ca39-0410-a469-dd3cf9ba447f --- diff --git a/include/gras/virtu.h b/include/gras/virtu.h index e15510edb7..6b3b7f6b24 100644 --- a/include/gras/virtu.h +++ b/include/gras/virtu.h @@ -39,6 +39,13 @@ void gras_os_sleep(double sec); const char * gras_os_myname(void); +/** @brief get process identification + * + * Returns the process ID of the current process. (This is often used + by routines that generate unique temporary file names.) + */ +int gras_process_getpid(void); + /** @} */ END_DECL() diff --git a/src/gras/Virtu/rl_process.c b/src/gras/Virtu/rl_process.c index f602d7a2da..67933cd45a 100644 --- a/src/gras/Virtu/rl_process.c +++ b/src/gras/Virtu/rl_process.c @@ -9,6 +9,7 @@ #include "gras_modinter.h" /* module initialization interface */ #include "gras/Virtu/virtu_rl.h" +#include "portable.h" XBT_LOG_EXTERNAL_CATEGORY(process); XBT_LOG_DEFAULT_CATEGORY(process); @@ -33,6 +34,10 @@ const char *xbt_procname(void) { else return "(null)"; } +int gras_process_getpid(void) { + return getpid(); +} + /* ************************************************************************** * Process data * **************************************************************************/ diff --git a/src/gras/Virtu/sg_process.c b/src/gras/Virtu/sg_process.c index 0c51c0e452..4f78a4932d 100644 --- a/src/gras/Virtu/sg_process.c +++ b/src/gras/Virtu/sg_process.c @@ -134,3 +134,11 @@ const char* xbt_procname(void) { else return ""; } + +int gras_process_getpid(void) { + m_process_t process = MSG_process_self(); + if ((process != NULL) && (process->simdata)) + return MSG_process_get_PID(MSG_process_self()); + else + return 0; +}