From c9c982fb81d55fb63619d02198931f59e7beffec Mon Sep 17 00:00:00 2001 From: quemy Date: Thu, 7 Feb 2013 23:18:39 +0100 Subject: [PATCH] Avoid race condition by manualy setting the island statut on running (Nils Mangelsen) --- smp/src/abstractIsland.h | 5 +++++ smp/src/island.cpp | 6 ++++++ smp/src/island.h | 7 ++++++- smp/src/islandModel.cpp | 1 + 4 files changed, 18 insertions(+), 1 deletion(-) diff --git a/smp/src/abstractIsland.h b/smp/src/abstractIsland.h index ba8a3f43a..db0c4ba2b 100644 --- a/smp/src/abstractIsland.h +++ b/smp/src/abstractIsland.h @@ -82,6 +82,11 @@ public: */ virtual bool isStopped(void) const = 0; + /** + * Set the stopped indicator on false + */ + virtual void setRunning(void) = 0; + /** * Receive population by integrate individuals. */ diff --git a/smp/src/island.cpp b/smp/src/island.cpp index f09c451ac..544ec51c1 100644 --- a/smp/src/island.cpp +++ b/smp/src/island.cpp @@ -103,6 +103,12 @@ bool paradiseo::smp::Island::isStopped(void) const return (bool)stopped; } +template