Как реализовать сторожевой таймер в Python?

Я хотел бы реализовать простой сторожевой таймер в Python с двумя вариантами использования:

Watchdog гарантирует, что функция не будет выполняться дольше, чемx секундWatchdog гарантирует, что определенная регулярно выполняемая функция действительно выполняет по крайней мере каждыйy секунд

Как мне это сделать?