blob: c4799f4dbf3475d9bf01d8a537cce127bfc097c7 (
plain) (
blame)
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
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
|
SPDX-License-Identifier: CC-BY-SA-4.0 OR BSD-2-Clause
brief: |
Wakes up after a count of ${/glossary/clock-tick:/plural} have occurred or
yields the processor.
copyrights:
- Copyright (C) 2021 embedded brains GmbH & Co. KG
- Copyright (C) 1988, 2023 On-Line Applications Research Corporation (OAR)
definition:
default:
attributes: null
body: null
params:
- ${../../type/if/interval:/name} ${.:/params[0]/name}
return: ${../../status/if/code:/name}
variants: []
description: |
This directive blocks the calling task for the specified ${.:/params[0]/name}
count of clock ticks if the value is not equal to ${yield-processor:/name}.
When the requested count of ticks have occurred, the task is made ready. The
clock tick directives automatically update the delay period. The calling task
may give up the processor and remain in the ready state by specifying a value
of ${yield-processor:/name} in ${.:/params[0]/name}.
enabled-by: true
index-entries:
- delay a task for a count of clock ticks
- wake up after a count of clock ticks
interface-type: function
links:
- role: interface-placement
uid: header
- role: interface-ingroup
uid: group
- role: constraint
uid: /constraint/directive-ctx-task
- role: constraint
uid: /constraint/clock-driver
- role: constraint
uid: /constraint/fatal-bad-thread-dispatch-disable-level
name: rtems_task_wake_after
notes: |
Setting the system date and time with the ${../../clock/if/set:/name}
directive and similar directives which set ${/glossary/clock-realtime:/term}
have no effect on a ${wake-after:/name} blocked task. The delay until first
clock tick will never be a whole clock tick interval since this directive will
never execute exactly on a clock tick. Applications requiring use of a clock
(${/glossary/clock-realtime:/term} or ${/glossary/clock-monotonic:/term})
instead of clock ticks should make use of ${/c/if/clock-nanosleep:/name}.
params:
- description: |
is the count of ${/glossary/clock-tick:/plural} to delay the task or
${yield-processor:/name} to yield the processor.
dir: null
name: ticks
return:
return: null
return-values:
- description: |
The requested operation was successful.
value: ${../../status/if/successful:/name}
type: interface
|