summaryrefslogtreecommitdiffstats
path: root/Help/prop_test/TIMEOUT_SIGNAL_NAME.rst
blob: 6294d275531971f5d429b5a51017e53a1336c76c (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
TIMEOUT_SIGNAL_NAME
-------------------

.. versionadded:: 3.27

Specify a custom signal to send to a test process when its timeout is reached.
This is available only on platforms supporting POSIX signals.
It is not available on Windows.

The name must be one of the following:

  ``SIGINT``
    Interrupt.

  ``SIGQUIT``
    Quit.

  ``SIGTERM``
    Terminate.

  ``SIGUSR1``
    User defined signal 1.

  ``SIGUSR2``
    User defined signal 2.

The custom signal is sent to the test process to give it a chance
to exit gracefully during a grace period:

* If the test process created any children, it is responsible for
  terminating them too.

* The grace period length is determined by the
  :prop_test:`TIMEOUT_SIGNAL_GRACE_PERIOD` test property.

* If the test process does not terminate before the grace period ends,
  :manual:`ctest(1)` will force termination of its entire process tree
  via ``SIGSTOP`` and ``SIGKILL``.

See also :variable:`CTEST_TEST_TIMEOUT`,
:prop_test:`TIMEOUT`, and :prop_test:`TIMEOUT_AFTER_MATCH`.