pthread_cleanup_pop(3)

pthread_cleanup_pop3

Call the first cleanup routine

Usage

#include <pthread.h>

void

pthread_cleanup_pop(int execute);

Library

POSIX Threads Library (libpthread, -lpthread)

Overview

The pthread_cleanup_pop() function pops the top cleanup routine off of the current threads cleanup routine stack, and, if execute is non-zero, it will execute the function. If there is no cleanup routine then pthread_cleanup_pop() does nothing.

The pthread_cleanup_pop() function is implemented as a macro that closes a block. Invocations of this function must appear as standalone statements that are paired with an earlier call of pthread_cleanup_push(3) in the same lexical scope.

Return values

The pthread_cleanup_pop() function does not return any value.

Errors

None

Releases

79 releases since FreeBSD 2.2.8-RELEASE; the text changed 42 times.

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

Standards

The pthread_cleanup_pop() function conforms to ISO/IEC 9945-1:1996 (“POSIX.1”).

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