X-Git-Url: http://info.iut-bm.univ-fcomte.fr/pub/gitweb/simgrid.git/blobdiff_plain/8a809d7e6c41d91ba4e804783c61e35f197b196e..f787351e3355ab558d4f491bc52bef2012eaa3e8:/src/msg/private.h diff --git a/src/msg/private.h b/src/msg/private.h index af95d1a13c..3e30b4f504 100644 --- a/src/msg/private.h +++ b/src/msg/private.h @@ -16,6 +16,7 @@ #include "xbt/dict.h" #include "xbt/context.h" #include "xbt/config.h" +#include "xbt/mallocator.h" /**************** datatypes **********************************/ @@ -87,13 +88,15 @@ typedef struct MSG_Global { int paje_maxPID; int PID; int session; + xbt_mallocator_t task_mallocator; + xbt_mallocator_t task_simdata_mallocator; } s_MSG_Global_t, *MSG_Global_t; extern MSG_Global_t msg_global; /************************** Configuration support ********************************/ -void msg_config_init(void); /* create the config set, call this before use! */ -void msg_config_finalize(void); /* destroy the config set, call this at cleanup. */ +XBT_PUBLIC void msg_config_init(void); /* create the config set, call this before use! */ +XBT_PUBLIC void msg_config_finalize(void); /* destroy the config set, call this at cleanup. */ extern int _msg_init_status; /* 0: beginning of time; 1: pre-inited (cfg_set created); 2: inited (running) */ @@ -110,18 +113,22 @@ extern xbt_cfg_t _msg_cfg_set; get_state(MSG_host_self()->simdata->host)==SURF_CPU_ON,\ "Host failed, you cannot call this function.") -m_host_t __MSG_host_create(const char *name, void *workstation, +XBT_PUBLIC m_host_t __MSG_host_create(const char *name, void *workstation, void *data); -void __MSG_host_destroy(m_host_t host); -void __MSG_task_execute(m_process_t process, m_task_t task); -MSG_error_t __MSG_wait_for_computation(m_process_t process, m_task_t task); -MSG_error_t __MSG_task_wait_event(m_process_t process, m_task_t task); +XBT_PUBLIC void __MSG_host_destroy(m_host_t host); +XBT_PUBLIC void __MSG_task_execute(m_process_t process, m_task_t task); +XBT_PUBLIC MSG_error_t __MSG_wait_for_computation(m_process_t process, m_task_t task); +XBT_PUBLIC MSG_error_t __MSG_task_wait_event(m_process_t process, m_task_t task); -int __MSG_process_block(double max_duration, const char *info); -MSG_error_t __MSG_process_unblock(m_process_t process); -int __MSG_process_isBlocked(m_process_t process); +XBT_PUBLIC int __MSG_process_block(double max_duration, const char *info); +XBT_PUBLIC MSG_error_t __MSG_process_unblock(m_process_t process); +XBT_PUBLIC int __MSG_process_isBlocked(m_process_t process); -void __MSG_display_process_status(void); +XBT_PUBLIC void __MSG_display_process_status(void); + +XBT_PUBLIC m_task_t task_mallocator_new_f(void); +XBT_PUBLIC void task_mallocator_free_f(m_task_t task); +XBT_PUBLIC void task_mallocator_reset_f(m_task_t task); #ifdef ALVIN_SPECIAL_LOGING #define PAJE_PROCESS_STATE(process,state)\