X-Git-Url: http://info.iut-bm.univ-fcomte.fr/pub/gitweb/simgrid.git/blobdiff_plain/55092bf3f9fe1cccfe72f7ef81fcd51f9a0eb4ca..d9d29f9c45022aeb18af277c995291c0547bbc0d:/include/simgrid/simix.hpp diff --git a/include/simgrid/simix.hpp b/include/simgrid/simix.hpp index d4200a3080..0da87dbbb3 100644 --- a/include/simgrid/simix.hpp +++ b/include/simgrid/simix.hpp @@ -17,6 +17,7 @@ #include #include #include +#include #include @@ -86,6 +87,11 @@ typedef std::function args)> ActorCodeFactory XBT_PUBLIC(void) registerFunction(const char* name, ActorCodeFactory factory); +/** These functions will be called when we detect a deadlock: any remaining process is locked on an action + * + * If these functions manage to unlock some of the processes, then the deadlock will be avoided. + */ +extern simgrid::xbt::signal onDeadlock; } } @@ -100,7 +106,7 @@ XBT_PUBLIC(void) registerFunction(const char* name, ActorCodeFactory factory); * int argc, char **argv: parameters passed to code * xbt_dict_t pros: properties */ -typedef smx_process_t (*smx_creation_func_t) ( +typedef smx_actor_t (*smx_creation_func_t) ( /* name */ const char*, std::function code, /* userdata */ void*, @@ -108,12 +114,12 @@ typedef smx_process_t (*smx_creation_func_t) ( /* kill_time */ double, /* props */ xbt_dict_t, /* auto_restart */ int, - /* parent_process */ smx_process_t); + /* parent_process */ smx_actor_t); extern "C" XBT_PUBLIC(void) SIMIX_function_register_process_create(smx_creation_func_t function); -XBT_PUBLIC(smx_process_t) simcall_process_create(const char *name, +XBT_PUBLIC(smx_actor_t) simcall_process_create(const char *name, std::function code, void *data, const char *hostname,