X-Git-Url: http://info.iut-bm.univ-fcomte.fr/pub/gitweb/simgrid.git/blobdiff_plain/791d2a621277a221aa84be5602565208ca441f44..ae486da8d6f00286ea3bf487c83978598c2f8bc6:/src/kernel/activity/SleepImpl.cpp diff --git a/src/kernel/activity/SleepImpl.cpp b/src/kernel/activity/SleepImpl.cpp index ea0fe2d2ee..edabd248fa 100644 --- a/src/kernel/activity/SleepImpl.cpp +++ b/src/kernel/activity/SleepImpl.cpp @@ -8,8 +8,6 @@ #include "simgrid/kernel/resource/Action.hpp" #include "simgrid/s4u/Host.hpp" #include "src/kernel/context/Context.hpp" - -#include "simgrid/Exception.hpp" #include "src/simix/ActorImpl.hpp" #include "src/simix/popping_private.hpp" #include "src/simix/smx_private.hpp" @@ -42,7 +40,7 @@ void SleepImpl::post() smx_simcall_t simcall = simcalls_.front(); simcalls_.pop_front(); e_smx_state_t result; - if (host_ && host_->is_off()) { + if (host_ && not host_->is_on()) { /* If the host running the synchro failed, notice it. This way, the asking * actor can be killed if it runs on that host itself */ result = SIMIX_SRC_HOST_FAILURE; @@ -64,12 +62,12 @@ void SleepImpl::post() THROW_IMPOSSIBLE; break; } - if (simcall->issuer->host_->is_off()) { + if (not simcall->issuer->get_host()->is_on()) { simcall->issuer->context_->iwannadie = true; } simcall_process_sleep__set__result(simcall, result); simcall->issuer->waiting_synchro = nullptr; - if (simcall->issuer->suspended_) { + if (simcall->issuer->is_suspended()) { XBT_DEBUG("Wait! This process is suspended and can't wake up now."); simcall->issuer->suspended_ = false; simcall_HANDLER_process_suspend(simcall, simcall->issuer); @@ -80,7 +78,10 @@ void SleepImpl::post() SIMIX_process_sleep_destroy(this); } - +void SleepImpl::finish() +{ + /* FIXME some part of post should move to finish */ +} } // namespace activity } // namespace kernel } // namespace simgrid