RTFW_WATCHDOG_CONFIGURATION Structure

RTFW_WATCHDOG_CONFIGURATION represents the configuration of the RTX64 watchdog timer, which is used to detect runaway real-time threads.

Syntax

typedef struct _RTFW_WATCHDOG_CONFIGURATION(
    size_t Size;
    bool WatchdogEnabled;
    unsigned int WatchdogTimeout;
} RTFW_WATCHDOG_CONFIGURATION, * PRTFW_WATCHDOG_CONFIGURATION;

Members

Size

The size of this structure (in bytes). Client code must set this member to sizeof(RTFW_WATCHDOG_CONFIGURATION) before passing this structure to any function.

WatchdogEnabled

If true, the Subsystem will monitor threads to detect if a real-time thread is CPU bound for longer than the timeout value. If detected, all real-time threads are frozen. If false, the Subsystem will not monitor threads. This is recommended for development and debugging purposes not for deployed systems.

WatchdogTimeout

The timeout period, in microseconds, for determining if a real-time thread is CPU bound for too long and has become a runaway thread that must be stopped. The minimum value is 1000 microseconds. The maximum value is Uint32Max (4,294,967,295). This value must be a positive multiple of the HAL timer period (see RtfwSetSubsystemConfiguration). If the HAL timer period is changed using RtfwSetSubsystemConfiguration and the watchdog timeout period is not an integer multiple of the new HAL timer period, then the watchdog timeout period is changed to be the next higher integer multiple of the HAL timer period.

Requirements

Minimum Required Version RTX64 3.4
Header RtfwAPI.h
Library RtfwAPI.lib

See Also:

RtfwGetWatchdogConfiguration

RtfwSetWatchdogConfiguration

Runaway Thread Management