vg
tools for working with variation graphs
|
#include <watchdog.hpp>
Public Attributes | |
mutex | access_mutex |
bool | is_checked_in = false |
Is the thread checked in (true) or not? More... | |
bool | timed_out = false |
Have we reported a watchdog timeout since the last checkin for the thread? More... | |
chrono::steady_clock::time_point | last_checkin |
When did the thread last check in? More... | |
size_t | checkin_high_water_kb |
what was our memory high water mark at last checkin? More... | |
string | task_name |
What task did the thread last check into? More... | |
Wrap all the per-thread state in a struct to avoid vectors of bools and simplify things.
mutex vg::Watchdog::thread_state_t::access_mutex |
Lock this before reading or writing any fields. Regulates access between the thread itself and the watcher thread.
size_t vg::Watchdog::thread_state_t::checkin_high_water_kb |
what was our memory high water mark at last checkin?
bool vg::Watchdog::thread_state_t::is_checked_in = false |
Is the thread checked in (true) or not?
chrono::steady_clock::time_point vg::Watchdog::thread_state_t::last_checkin |
When did the thread last check in?
string vg::Watchdog::thread_state_t::task_name |
What task did the thread last check into?
bool vg::Watchdog::thread_state_t::timed_out = false |
Have we reported a watchdog timeout since the last checkin for the thread?