ualarm(3)

ualarm3

Schedule signal after specified time

Usage

#include <unistd.h>

useconds_t

ualarm(useconds_t microseconds, useconds_t interval);

Library

Standard C Library (libc, -lc)

Overview

This is a simplified interface to setitimer(2).

The ualarm() function waits a count of microseconds before asserting the terminating signal SIGALRM. System activity or time used in processing the call may cause a slight delay.

If the interval argument is non-zero, the SIGALRM signal will be sent to the process every interval microseconds after the timer expires (e.g. after microseconds number of microseconds have passed).

Due to setitimer(2) restriction the maximum number of microseconds and interval is limited to 100,000,000,000,000 (in case this value fits in the unsigned integer).

Return values

When the signal has successfully been caught, ualarm() returns the amount of time left on the clock.

Notes

A microsecond is 0.000001 seconds.

Releases

87 releases since FreeBSD 2.0.5-RELEASE; the text changed 47 times.

  1. 2.0.5
  2. 2.1.5–2.1.7.1
  3. 2.2.2–2.2.8
  4. 2.2.9
  5. 3.0–3.2
  6. 3.3–3.4
  7. 3.5–3.5.1
  8. 4.0
  9. 4.1–4.2
  10. 4.3
  11. 4.4
  12. 4.5–4.11
  13. 5.0
  14. 5.1–5.2.1
  15. 5.3–6.3
  16. 6.4
  17. 7.0
  18. 7.1
  19. 7.2
  20. 7.3
  21. 7.4
  22. 8.0
  23. 8.1
  24. 8.2
  25. 8.3
  26. 8.4
  27. 9.0
  28. 9.1
  29. 9.2
  30. 9.3
  31. 10.0
  32. 10.1
  33. 10.2
  34. 10.3
  35. 10.4
  36. 11.0
  37. 11.1
  38. 11.2
  39. 11.3
  40. 11.4
  41. 12.0
  42. 12.1
  43. 12.2
  44. 12.3
  45. 12.4
  46. 13.0–13.2
  47. 13.3–14.5
  48. 15.0–16.0

History

The ualarm() function appeared in 4.3BSD.

From base 16.0-CURRENT-20261027-61c70dc16a79 in FreeBSD 16.0-CURRENT (2026-10-27). Parsed by carta from the page's mdoc source.