[systemd-devel] Dynamic .timer scheduling

Lennart Poettering lennart at poettering.net
Tue Mar 31 13:01:10 UTC 2020


On Di, 28.01.20 10:46, Johannes Ernst (johannes.ernst at gmail.com) wrote:

> Is there a best practice for scheduling .timers based on what happened in a previous run?
>
> Pseudocode:
>
> while( true ) :
>     delta = runService();
>     sleep( delta );
>
> I can think of …
>
> 1) run the job frequently, but skip the bulk of its execution most of the time (e.g. decrementing a counter saved somewhere)
> 2) have the job modify the .timer file at the end of each run (sounds … not so great)
>
> There isn’t anything systemd “native” for that, right?

Consider just creating a transient timer unit via the D-Bus API from
your service code. Alternatively, use systemd-run for that, which can
do that for you from the cmdline.

Lennart

--
Lennart Poettering, Berlin


More information about the systemd-devel mailing list