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
//! Selects the `runtime::task` spawn/sleep/interval backend at compile time.
//!
//! The task seam (`src/runtime/task.rs`) has two mutually exclusive backends,
//! chosen here so the ~two dozen seam sites gate on one uniform condition
//! rather than repeating the target/feature predicate at each:
//!
//! * `exec_backend` — the std-thread background executor (callback pool +
//! delayed timer + scanOnce worker, `runtime::background`). This is the
//! only option on `epics_embedded_target` (RTEMS or VxWorks — no tokio
//! reactor on either), and — via the `rtems-exec-model` cargo feature — the
//! **host-selectable RTEMS execution model**: a real product mechanism for a
//! Linux (e.g. PREEMPT_RT) blocking-front-end deployment that wants the same
//! runtime-free spawn/timer backend the embedded build uses, driving async
//! record-processing completion on dedicated OS threads instead of a tokio
//! runtime.
//! * `tokio_backend` — the tokio runtime. The hosted default (feature off,
//! non-embedded target).
//!
//! Exactly one of the two is set for any build.