XBT_PUBLIC(const char *) MSG_task_get_name(m_task_t task);
XBT_PUBLIC(MSG_error_t) MSG_task_cancel(m_task_t task);
XBT_PUBLIC(MSG_error_t) MSG_task_destroy(m_task_t task);
+XBT_PUBLIC(void) MSG_task_ref(m_task_t t);
XBT_PUBLIC(MSG_error_t) MSG_task_get(m_task_t * task, m_channel_t channel);
XBT_PUBLIC(MSG_error_t) MSG_task_get_with_timeout(m_task_t * task,
CHECK_HOST();
simdata = task->simdata;
- xbt_assert1((!simdata->compute)
- && (task->simdata->refcount == 1),
+
+ xbt_assert1((!simdata->compute),
+ //&& (task->simdata->refcount == 1), FIXME: since lua bindings play with this refcount to make sure that tasks don't get gc() twice, this field cannot be used here as is anymore
"This task is executed somewhere else. Go fix your code! %d", task->simdata->refcount);
DEBUG1("Computing on %s", MSG_process_self()->simdata->m_host->name);
void SIMIX_ctx_sysv_factory_init(smx_context_factory_t * factory);
void SIMIX_ctx_lua_factory_init(smx_context_factory_t * factory);
-void SIMIX_ctx_lua_factory_set_state(void *state);
void SIMIX_ctx_java_factory_init(smx_context_factory_t * factory);