X-Git-Url: http://bilbo.iut-bm.univ-fcomte.fr/pub/gitweb/simgrid.git/blobdiff_plain/5954596b70db131a1a1ce5d8580ba32687066e34..d236809e6149a03ef3e53599458f51c98f79f94d:/src/s4u/s4u_Semaphore.cpp diff --git a/src/s4u/s4u_Semaphore.cpp b/src/s4u/s4u_Semaphore.cpp index 908378c497..78a6dcf6da 100644 --- a/src/s4u/s4u_Semaphore.cpp +++ b/src/s4u/s4u_Semaphore.cpp @@ -1,15 +1,13 @@ -/* Copyright (c) 2018-2021. The SimGrid Team. All rights reserved. */ +/* Copyright (c) 2018-2022. The SimGrid Team. All rights reserved. */ /* This program is free software; you can redistribute it and/or modify it * under the terms of the license (GNU LGPL) which comes with this package. */ -#include "src/msg/msg_private.hpp" -#include "xbt/log.h" +#include +#include -#include "simgrid/forward.h" -#include "simgrid/s4u/Semaphore.hpp" #include "src/kernel/activity/SemaphoreImpl.hpp" -#include "src/mc/checker/SimcallObserver.hpp" +#include "src/kernel/actor/SimcallObserver.hpp" namespace simgrid { namespace s4u { @@ -23,14 +21,16 @@ SemaphorePtr Semaphore::create(unsigned int initial_capacity) void Semaphore::acquire() { kernel::actor::ActorImpl* issuer = kernel::actor::ActorImpl::self(); - mc::SemAcquireSimcall observer{issuer, pimpl_}; - kernel::actor::simcall_blocking([&observer] { observer.get_sem()->acquire(observer.get_issuer(), -1.0); }, - &observer); + kernel::actor::SemAcquireSimcall observer{issuer, pimpl_}; + kernel::actor::simcall_blocking([&observer] { observer.get_sem()->acquire(observer.get_issuer(), -1.0); }, &observer); } bool Semaphore::acquire_timeout(double timeout) { - return simcall_sem_acquire_timeout(pimpl_, timeout); + kernel::actor::ActorImpl* issuer = kernel::actor::ActorImpl::self(); + kernel::actor::SemAcquireSimcall observer{issuer, pimpl_, timeout}; + return kernel::actor::simcall_blocking( + [&observer] { observer.get_sem()->acquire(observer.get_issuer(), observer.get_timeout()); }, &observer); } void Semaphore::release()