The resolution of the alarm depends on the underlying implementation, which is based on pthread_cond_timedwait() (on Windows on the pthread emulation thereof). Long-running foreign predicates that do not call PL_handle_signals() may further delay the alarm. The relation to blocking system calls (sleep, reading from slow devices, etc.) is undefined and varies between implementations.
Options is a list of Name(Value)
terms. Defined options are:
true
(default false
), the timer is removed
automatically after fireing. Otherwise it must be destroyed explicitly
using remove_alarm/1.false
(default true
), the timer is
allocated but not scheduled for execution. It must be started later
using install_alarm/1.