#include "src/kernel/activity/ExecImpl.hpp"
#include "xbt/Extendable.hpp"
+#include <atomic>
+
/**************** datatypes **********************************/
/**************************** Host Extension *********************************/
namespace simgrid {
/************************** Global variables ********************************/
typedef struct MSG_Global {
int debug_multiple_use; /* whether we want an error message when reusing the same Task for 2 things */
- unsigned long int sent_msg; /* Total amount of messages sent during the simulation */
+ std::atomic_int_fast32_t sent_msg; /* Total amount of messages sent during the simulation */
void (*task_copy_callback) (msg_task_t task, msg_process_t src, msg_process_t dst);
void_f_pvoid_t process_data_cleanup;
} s_MSG_Global_t;
/*************************************************************/
XBT_PRIVATE void MSG_process_cleanup_from_SIMIX(smx_actor_t smx_proc);
XBT_PRIVATE smx_actor_t MSG_process_create_from_SIMIX(const char* name, std::function<void()> code, void* data,
- sg_host_t host, xbt_dict_t properties,
+ sg_host_t host, std::map<std::string, std::string>* properties,
smx_actor_t parent_process);
XBT_PRIVATE void MSG_comm_copy_data_from_SIMIX(smx_activity_t comm, void* buff, size_t buff_size);
/* declaration of instrumentation functions from msg_process_instr.c */
XBT_PRIVATE char *instr_process_id (msg_process_t proc, char *str, int len);
XBT_PRIVATE char *instr_process_id_2 (const char *process_name, int process_pid, char *str, int len);
-XBT_PRIVATE void TRACE_msg_process_change_host(msg_process_t process, msg_host_t old_host, msg_host_t new_host);
+XBT_PRIVATE void TRACE_msg_process_change_host(msg_process_t process, msg_host_t new_host);
XBT_PRIVATE void TRACE_msg_process_create (const char *process_name, int process_pid, msg_host_t host);
XBT_PRIVATE void TRACE_msg_process_destroy (const char *process_name, int process_pid);
XBT_PRIVATE void TRACE_msg_process_kill(smx_process_exit_status_t status, msg_process_t process);