| Fast DDS Version 3.3.0 Fast DDS

Loading...
Searching...
No Matches
ThreadSettings Struct Reference
eProsima Fast DDS API Reference » RTPS » RTPS Attributes Module.

Struct ThreadSettings to specify various thread settings. More...

`#include <ThreadSettings.hpp>`

## Public Member Functions

bool | operator== (const ThreadSettings &rhs) const
| Compare the left hand side (LHS) ThreadSetting with another one for equality.
bool | operator!= (const ThreadSettings &rhs) const
| Compare the left hand side (LHS) ThreadSetting with another one for inequality.

## Public Attributes

int32_t | scheduling_policy = -1
| The scheduling policy used for this thread.
int32_t | priority = std::numeric_limits<int32_t>::min()
| The thread's priority.
uint64_t | affinity = 0
| The thread's affinity.
int32_t | stack_size = -1
| The thread's stack size in bytes.

## Detailed Description

Struct ThreadSettings to specify various thread settings.

This class is used to define attributes across a wide set of Qos and APIs.

## Member Function Documentation

## ◆ operator!=()

bool operator!= | ( | const ThreadSettings & | rhs | ) | const

Compare the left hand side (LHS) ThreadSetting with another one for inequality.

Parameters

  rhs | The ThreadSettings instance to compare with the LHS one.

## ◆ operator==()

bool operator== | ( | const ThreadSettings & | rhs | ) | const

Compare the left hand side (LHS) ThreadSetting with another one for equality.

Parameters

  rhs | The ThreadSettings instance to compare with the LHS one.

## Member Data Documentation

## ◆ affinity

uint64_t affinity = 0

The thread's affinity.

On some systems (Windows, Linux), this is a bit mask for setting the threads affinity to each core individually. On MacOS, this sets the affinity tag for the thread, and the OS tries to share the L2 cache between threads with the same affinity. A value of 0 indicates no particular affinity.

This value is platform specific and it is used as-is to configure the specific platform thread. Setting this value to something other than the default one may require different privileges on different platforms.

## ◆ priority

int32_t priority = std::numeric_limits<int32_t>::min()

The thread's priority.

Configures the thread's priority. A value of -2^31 indicates system default.

This value is platform specific and it is used as-is to configure the specific platform thread. Setting this value to something other than the default one may require different privileges on different platforms.

## ◆ scheduling_policy

int32_t scheduling_policy = -1

The scheduling policy used for this thread.

Configures the scheduling policy used for the thread. A value of -1 indicates system default.

This value is platform specific and it is used as-is to configure the specific platform thread. It is ignored on Windows platforms. Setting this value to something other than the default one may require different privileges on different platforms.

## ◆ stack_size

int32_t stack_size = -1

The thread's stack size in bytes.

Configures the thread's stack size. A value of -1 indicates system default.

This value is platform specific and it is used as-is to configure the specific platform thread. Setting this value to something other than the default one may require different privileges on different platforms.

The documentation for this struct was generated from the following file:

- include/fastdds/rtps/attributes/ThreadSettings.hpp