15 #ifndef ECL_THREADS_THREADABLE_POS_HPP_ 16 #define ECL_THREADS_THREADABLE_POS_HPP_ 23 #if defined(ECL_IS_POSIX) 29 #include <ecl/utilities/parameter.hpp> 30 #include <ecl/config/macros.hpp> 32 #include "priority.hpp" 68 virtual ~Threadable() {}
80 if ( isRunning() ) {
return false; }
82 Thread thread(&Threadable::executeThreadFunction,*
this, priority);
90 Parameter<bool> isRunning;
93 Threadable() : isRunning(false) {}
95 virtual void runnable() = 0;
98 void executeThreadFunction() {
Pre-processed macro definitions that define the target platform.