- while (not simcalls_.empty()) {
- smx_simcall_t simcall = simcalls_.front();
- simcalls_.pop_front();
- e_smx_state_t result;
- if (host && host->is_off()) {
- /* 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;
- SMX_EXCEPTION(simcall->issuer, host_error, 0, "Host failed");
- }
+ surf_action_ = host_->pimpl_cpu->sleep(duration_);
+ surf_action_->set_activity(this);
+ XBT_DEBUG("Create sleep synchronization %p", this);
+ return this;
+}