X-Git-Url: http://g0dil.de/git?a=blobdiff_plain;f=Scheduler%2FFIFORunner.hh;h=6513f72396485bc575b2e800e995376db6438915;hb=c45c112ae88196ea8da9c5a9efb0e167196744d2;hp=27b626f876acb6d62a47312fc72b50d7a395223d;hpb=3c3f12e715cd474208351347316f59fdaf19ef81;p=senf.git diff --git a/Scheduler/FIFORunner.hh b/Scheduler/FIFORunner.hh index 27b626f..6513f72 100644 --- a/Scheduler/FIFORunner.hh +++ b/Scheduler/FIFORunner.hh @@ -99,15 +99,19 @@ namespace detail { void taskTimeout(unsigned ms); unsigned taskTimeout() const; + void abortOnTimeout(bool flag); + bool abortOnTimeout() const; void startWatchdog(); void stopWatchdog(); - unsigned hangCount() const; + unsigned hangCount(); iterator begin() const; iterator end() const; + void yield(); + protected: private: @@ -137,12 +141,14 @@ namespace detail { timer_t watchdogId_; bool watchdogRunning_; unsigned watchdogMs_; + bool watchdogAbort_; std::string runningName_; # ifdef SENF_DEBUG std::string runningBacktrace_; # endif unsigned watchdogCount_; unsigned hangCount_; + bool yield_; friend void senf::scheduler::restart(); friend class singleton;