Files
allwpilib/hal/src/main/native/sim/Threads.cpp
Tyler Veness 173ecd3d02 [hal] Refactor threads API (#8701)
Since sched_setscheduler() requires non-RT priorities to be 0, we can
use that as a sentinel value for disabling RT and condense the Java API
to just two functions with fewer parameters. The thread priority setter
is deprecated since only experts should use it.

The HAL Notifier thread priority setter was replaced with setting the
priority in the thread itself.

The C++ Notifier non-RT and RT constructors were deduplicated.

The real-time scheduler was changed from SCHED_FIFO to SCHED_RR, which
is SCHED_FIFO with threads allowed to run for a maximum time quantum
before yielding (100 ms by default).
2026-04-06 09:49:43 -06:00

32 lines
741 B
C++

// Copyright (c) FIRST and other WPILib contributors.
// Open Source Software; you can modify and/or share it under the terms of
// the WPILib BSD license file in the root directory of this project.
#include "wpi/hal/Threads.h"
#include <stdint.h>
#include "wpi/hal/Types.h"
namespace wpi::hal::init {
void InitializeThreads() {}
} // namespace wpi::hal::init
HAL_Status HAL_GetThreadPriority(NativeThreadHandle handle, int32_t* priority) {
*priority = 0;
return 0;
}
HAL_Status HAL_GetCurrentThreadPriority(int32_t* priority) {
*priority = 0;
return 0;
}
HAL_Status HAL_SetThreadPriority(NativeThreadHandle handle, int32_t priority) {
return 0;
}
HAL_Status HAL_SetCurrentThreadPriority(int32_t priority) {
return 0;
}