Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
Oops. Forgot to handle timeout.
authorArnaud Giersch <arnaud.giersch@univ-fcomte.fr>
Wed, 17 Mar 2021 08:42:13 +0000 (09:42 +0100)
committerArnaud Giersch <arnaud.giersch@univ-fcomte.fr>
Wed, 17 Mar 2021 10:08:54 +0000 (11:08 +0100)
We really need a test for that.

src/s4u/s4u_Semaphore.cpp

index 4662d5d..0ef2dbc 100644 (file)
@@ -31,7 +31,7 @@ void Semaphore::acquire()
 bool Semaphore::acquire_timeout(double timeout)
 {
   kernel::actor::ActorImpl* issuer = kernel::actor::ActorImpl::self();
-  mc::SemAcquireSimcall observer{issuer, pimpl_};
+  mc::SemAcquireSimcall observer{issuer, pimpl_, timeout};
   kernel::actor::simcall_blocking<void>(
       [&observer] { observer.get_sem()->acquire(observer.get_issuer(), observer.get_timeout()); }, &observer);
   return simgrid::simix::unmarshal<bool>(issuer->simcall_.result_);