oveRTOS C++ API
C++20 RAII wrappers for the oveRTOS C API
Loading...
Searching...
No Matches
Classes | Namespaces | Concepts | Typedefs | Functions
thread.hpp File Reference

Compile-time stack-sized thread with move semantics. More...

#include <ove/thread.h>
#include <ove/types.hpp>
#include <memory>
Include dependency graph for thread.hpp:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

class  ove::stop_token
 Lightweight read-only handle to a thread's cooperative cancellation flag. More...
 
class  ove::stop_source
 Writable counterpart to stop_token. std::stop_source analog. More...
 
class  ove::thread_id
 Opaque identity for an oveRTOS thread. std::thread::id analog. More...
 
class  ove::Thread< StackSize >
 RAII wrapper around an oveRTOS thread (task). More...
 
struct  ove::MemStats
 System heap statistics snapshot. More...
 

Namespaces

namespace  ove
 Top-level namespace for all oveRTOS C++ abstractions.
 
namespace  ove::this_thread
 Free functions that operate on the currently running thread.
 

Concepts

concept  ove::CooperativeThreadEntry
 Stateless callable invocable as void(stop_token).
 
concept  ove::CapturingCooperativeEntry
 Capturing callable invocable as void(stop_token).
 

Typedefs

using ove::ThreadInfo = ove_thread_info
 Snapshot of a single thread.
 

Functions

Result< MemStatsove::get_mem_stats () noexcept
 Query system heap statistics.
 
Result< size_t > ove::thread_list (ThreadInfo *out, size_t max) noexcept
 List all threads in the system.
 
void ove::this_thread::sleep_ms (uint32_t ms) noexcept
 Suspend the calling thread for at least ms milliseconds. Plain-millisecond analog of std::this_thread::sleep_for.
 
template<typename Rep , typename Period >
void ove::this_thread::sleep_for (std::chrono::duration< Rep, Period > d) noexcept
 Suspend the calling thread for the given chrono duration. std::this_thread::sleep_for analog.
 
void ove::this_thread::yield () noexcept
 Voluntarily relinquish the CPU to another ready thread of equal or higher priority. std::this_thread::yield analog.
 
ove_thread_t ove::this_thread::self () noexcept
 
thread_id ove::this_thread::get_id () noexcept
 

Detailed Description

Compile-time stack-sized thread with move semantics.