void TimeKeeper::stop(void) { ready = false; chThdTerminate(worker); ppstimesync_sem.signal(); /* speed up termination */ chThdWait(worker); worker = nullptr; Exti.pps(false); }
static void release(void) { protect_sem.signal(); }