Go to the documentation of this file.
   17 #ifndef USGOV_d9c2e31514229da73677728a36467d5093f9d8c21db0e4518775212f42272f6b 
   18 #define USGOV_d9c2e31514229da73677728a36467d5093f9d8c21db0e4518775212f42272f6b 
   22 #include <condition_variable> 
   27 namespace us{ 
namespace gov {
 
   33         bgtask(
function<
void ()> run, 
function<
void ()> onwakeup);
 
   40         virtual ko wait_ready(
const chrono::system_clock::time_point& deadline) 
const;
 
   44         bool isup()
 const { 
return resume.load()!=2; }
 
   45         bool isdown()
 const { 
return resume.load()==2; }
 
   47         bool resumed()
 const { 
return resume.load()>0; }
 
   49         void reset() { resume.store(0); }
 
   55         atomic<short> resume{0};
 
   59         function<void ()> 
run;
 
  
 
function< void()> onwakeup
Definition: bgtask.h:60
virtual void task_init()
Definition: bgtask.h:73
function< void()> run
Definition: bgtask.h:59
bool resumed() const
Definition: bgtask.h:47
virtual void task_cleanup()
Definition: bgtask.h:75
mutex mx_ready
Definition: bgtask.h:62
void reset()
Definition: bgtask.h:49
wbgtask(function< void()> onwakeup)
void set_run_function(function< void()> r)
const ko_t * ko
Definition: ko.h:27
static const char * KO_81021
Definition: bgtask.h:36
condition_variable cv_ready
Definition: bgtask.h:64
static constexpr ko ok
Definition: ko.h:28
us::gov::bgtask c
Definition: bgtask.cpp:24
bool is_active() const
Definition: bgtask.h:52
bool isup() const
Definition: bgtask.h:44
bool isdown() const
Definition: bgtask.h:45
virtual ko wait_ready(const chrono::system_clock::time_point &deadline) const
#define log
Definition: gov.h:83
bgtask(function< void()> run, function< void()> onwakeup)
bgtask b
Definition: bgtask.h:68