mesytec-mnode/external/taskflow-3.8.0/docs/xml/classtf_1_1Worker.xml
2025-01-04 01:25:05 +01:00

203 lines
12 KiB
XML

<?xml version='1.0' encoding='UTF-8' standalone='no'?>
<doxygen xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="compound.xsd" version="1.9.1" xml:lang="en-US">
<compounddef id="classtf_1_1Worker" kind="class" language="C++" prot="public">
<compoundname>tf::Worker</compoundname>
<includes refid="worker_8hpp" local="no">taskflow/core/worker.hpp</includes>
<sectiondef kind="friend">
<memberdef kind="friend" id="classtf_1_1Worker_1a763b2f90bc53f92d680a635fe28e858e" prot="private" static="no" const="no" explicit="no" inline="no" virt="non-virtual">
<type>class</type>
<definition>friend class Executor</definition>
<argsstring></argsstring>
<name>Executor</name>
<param>
<type><ref refid="classtf_1_1Executor" kindref="compound">Executor</ref></type>
</param>
<briefdescription>
</briefdescription>
<detaileddescription>
</detaileddescription>
<inbodydescription>
</inbodydescription>
<location file="taskflow/core/worker.hpp" line="45" column="3" bodyfile="taskflow/core/worker.hpp" bodystart="45" bodyend="-1"/>
</memberdef>
<memberdef kind="friend" id="classtf_1_1Worker_1a0f36eeb628ab3803180651682f5821f3" prot="private" static="no" const="no" explicit="no" inline="no" virt="non-virtual">
<type>class</type>
<definition>friend class WorkerView</definition>
<argsstring></argsstring>
<name>WorkerView</name>
<param>
<type><ref refid="classtf_1_1WorkerView" kindref="compound">WorkerView</ref></type>
</param>
<briefdescription>
</briefdescription>
<detaileddescription>
</detaileddescription>
<inbodydescription>
</inbodydescription>
<location file="taskflow/core/worker.hpp" line="46" column="3" bodyfile="taskflow/core/worker.hpp" bodystart="46" bodyend="-1"/>
</memberdef>
</sectiondef>
<sectiondef kind="private-attrib">
<memberdef kind="variable" id="classtf_1_1Worker_1ab21837ab13c416c19d133fc2a73f031c" prot="private" static="no" mutable="no">
<type>size_t</type>
<definition>size_t tf::Worker::_id</definition>
<argsstring></argsstring>
<name>_id</name>
<briefdescription>
</briefdescription>
<detaileddescription>
</detaileddescription>
<inbodydescription>
</inbodydescription>
<location file="taskflow/core/worker.hpp" line="72" column="12" bodyfile="taskflow/core/worker.hpp" bodystart="72" bodyend="-1"/>
</memberdef>
<memberdef kind="variable" id="classtf_1_1Worker_1a59a04a39db3d147221eed60da75a9744" prot="private" static="no" mutable="no">
<type>size_t</type>
<definition>size_t tf::Worker::_vtm</definition>
<argsstring></argsstring>
<name>_vtm</name>
<briefdescription>
</briefdescription>
<detaileddescription>
</detaileddescription>
<inbodydescription>
</inbodydescription>
<location file="taskflow/core/worker.hpp" line="73" column="12" bodyfile="taskflow/core/worker.hpp" bodystart="73" bodyend="-1"/>
</memberdef>
<memberdef kind="variable" id="classtf_1_1Worker_1a0884258c54f630a3b31e4d1e208852bb" prot="private" static="no" mutable="no">
<type><ref refid="classtf_1_1Executor" kindref="compound">Executor</ref> *</type>
<definition>Executor* tf::Worker::_executor</definition>
<argsstring></argsstring>
<name>_executor</name>
<initializer>{nullptr}</initializer>
<briefdescription>
</briefdescription>
<detaileddescription>
</detaileddescription>
<inbodydescription>
</inbodydescription>
<location file="taskflow/core/worker.hpp" line="74" column="14" bodyfile="taskflow/core/worker.hpp" bodystart="74" bodyend="-1"/>
</memberdef>
<memberdef kind="variable" id="classtf_1_1Worker_1a753b13866ccf3badaebf5e92af0bf63f" prot="private" static="no" mutable="no">
<type><ref refid="cpp/numeric/random" kindref="compound" external="/home/thuang295/Code/taskflow/doxygen/cppreference-doxygen-web.tag.xml">std::default_random_engine</ref></type>
<definition>std::default_random_engine tf::Worker::_rdgen</definition>
<argsstring></argsstring>
<name>_rdgen</name>
<initializer>{ <ref refid="cpp/numeric/random/random_device" kindref="compound" external="/home/thuang295/Code/taskflow/doxygen/cppreference-doxygen-web.tag.xml">std::random_device</ref>{}() }</initializer>
<briefdescription>
</briefdescription>
<detaileddescription>
</detaileddescription>
<inbodydescription>
</inbodydescription>
<location file="taskflow/core/worker.hpp" line="75" column="32" bodyfile="taskflow/core/worker.hpp" bodystart="75" bodyend="-1"/>
</memberdef>
<memberdef kind="variable" id="classtf_1_1Worker_1a582ddc7de274ecd0988af3dfb5d0f5bf" prot="private" static="no" mutable="no">
<type><ref refid="classtf_1_1BoundedTaskQueue" kindref="compound">BoundedTaskQueue</ref>&lt; Node * &gt;</type>
<definition>BoundedTaskQueue&lt;Node*&gt; tf::Worker::_wsq</definition>
<argsstring></argsstring>
<name>_wsq</name>
<briefdescription>
</briefdescription>
<detaileddescription>
</detaileddescription>
<inbodydescription>
</inbodydescription>
<location file="taskflow/core/worker.hpp" line="76" column="22" bodyfile="taskflow/core/worker.hpp" bodystart="76" bodyend="-1"/>
</memberdef>
<memberdef kind="variable" id="classtf_1_1Worker_1a54428c075390d30c9c55a0dd0838575e" prot="private" static="no" mutable="no">
<type>Node *</type>
<definition>Node* tf::Worker::_cache</definition>
<argsstring></argsstring>
<name>_cache</name>
<initializer>{nullptr}</initializer>
<briefdescription>
</briefdescription>
<detaileddescription>
</detaileddescription>
<inbodydescription>
</inbodydescription>
<location file="taskflow/core/worker.hpp" line="77" column="10" bodyfile="taskflow/core/worker.hpp" bodystart="77" bodyend="-1"/>
</memberdef>
<memberdef kind="variable" id="classtf_1_1Worker_1a559e98c3b61a201903d70952e39ab14f" prot="private" static="no" mutable="no">
<type>DefaultNotifier::Waiter *</type>
<definition>DefaultNotifier::Waiter* tf::Worker::_waiter</definition>
<argsstring></argsstring>
<name>_waiter</name>
<briefdescription>
</briefdescription>
<detaileddescription>
</detaileddescription>
<inbodydescription>
</inbodydescription>
<location file="taskflow/core/worker.hpp" line="79" column="29" bodyfile="taskflow/core/worker.hpp" bodystart="79" bodyend="-1"/>
</memberdef>
</sectiondef>
<sectiondef kind="public-func">
<memberdef kind="function" id="classtf_1_1Worker_1a0180ea51cc46551157eaae451b50c7d8" prot="public" static="no" const="yes" explicit="no" inline="yes" virt="non-virtual">
<type>size_t</type>
<definition>size_t tf::Worker::id</definition>
<argsstring>() const</argsstring>
<name>id</name>
<briefdescription>
<para>queries the worker id associated with its parent executor </para>
</briefdescription>
<detaileddescription>
<para>A worker id is a unsigned integer in the range <computeroutput>[0, N)</computeroutput>, where <computeroutput>N</computeroutput> is the number of workers spawned at the construction time of the executor. </para>
</detaileddescription>
<inbodydescription>
</inbodydescription>
<location file="taskflow/core/worker.hpp" line="57" column="19" bodyfile="taskflow/core/worker.hpp" bodystart="57" bodyend="57"/>
</memberdef>
<memberdef kind="function" id="classtf_1_1Worker_1a5e1ec48fd2295d260e8f335ff22b95ae" prot="public" static="no" const="yes" explicit="no" inline="yes" virt="non-virtual">
<type>size_t</type>
<definition>size_t tf::Worker::queue_size</definition>
<argsstring>() const</argsstring>
<name>queue_size</name>
<briefdescription>
<para>queries the size of the queue (i.e., number of enqueued tasks to run) associated with the worker </para>
</briefdescription>
<detaileddescription>
</detaileddescription>
<inbodydescription>
</inbodydescription>
<location file="taskflow/core/worker.hpp" line="63" column="19" bodyfile="taskflow/core/worker.hpp" bodystart="63" bodyend="63"/>
</memberdef>
<memberdef kind="function" id="classtf_1_1Worker_1a0c0505b0ce5b464d4458b5278265429a" prot="public" static="no" const="yes" explicit="no" inline="yes" virt="non-virtual">
<type>size_t</type>
<definition>size_t tf::Worker::queue_capacity</definition>
<argsstring>() const</argsstring>
<name>queue_capacity</name>
<briefdescription>
<para>queries the current capacity of the queue </para>
</briefdescription>
<detaileddescription>
</detaileddescription>
<inbodydescription>
</inbodydescription>
<location file="taskflow/core/worker.hpp" line="68" column="19" bodyfile="taskflow/core/worker.hpp" bodystart="68" bodyend="68"/>
</memberdef>
</sectiondef>
<briefdescription>
<para>class to create a worker in an executor </para>
</briefdescription>
<detaileddescription>
<para>The class is primarily used by the executor to perform work-stealing algorithm. Users can access a worker object and alter its property (e.g., changing the thread affinity in a POSIX-like system) using tf::WorkerInterface. </para>
</detaileddescription>
<location file="taskflow/core/worker.hpp" line="43" column="1" bodyfile="taskflow/core/worker.hpp" bodystart="43" bodyend="80"/>
<listofallmembers>
<member refid="classtf_1_1Worker_1a54428c075390d30c9c55a0dd0838575e" prot="private" virt="non-virtual"><scope>tf::Worker</scope><name>_cache</name></member>
<member refid="classtf_1_1Worker_1a0884258c54f630a3b31e4d1e208852bb" prot="private" virt="non-virtual"><scope>tf::Worker</scope><name>_executor</name></member>
<member refid="classtf_1_1Worker_1ab21837ab13c416c19d133fc2a73f031c" prot="private" virt="non-virtual"><scope>tf::Worker</scope><name>_id</name></member>
<member refid="classtf_1_1Worker_1a753b13866ccf3badaebf5e92af0bf63f" prot="private" virt="non-virtual"><scope>tf::Worker</scope><name>_rdgen</name></member>
<member refid="classtf_1_1Worker_1a59a04a39db3d147221eed60da75a9744" prot="private" virt="non-virtual"><scope>tf::Worker</scope><name>_vtm</name></member>
<member refid="classtf_1_1Worker_1a559e98c3b61a201903d70952e39ab14f" prot="private" virt="non-virtual"><scope>tf::Worker</scope><name>_waiter</name></member>
<member refid="classtf_1_1Worker_1a582ddc7de274ecd0988af3dfb5d0f5bf" prot="private" virt="non-virtual"><scope>tf::Worker</scope><name>_wsq</name></member>
<member refid="classtf_1_1Worker_1a763b2f90bc53f92d680a635fe28e858e" prot="private" virt="non-virtual"><scope>tf::Worker</scope><name>Executor</name></member>
<member refid="classtf_1_1Worker_1a0180ea51cc46551157eaae451b50c7d8" prot="public" virt="non-virtual"><scope>tf::Worker</scope><name>id</name></member>
<member refid="classtf_1_1Worker_1a0c0505b0ce5b464d4458b5278265429a" prot="public" virt="non-virtual"><scope>tf::Worker</scope><name>queue_capacity</name></member>
<member refid="classtf_1_1Worker_1a5e1ec48fd2295d260e8f335ff22b95ae" prot="public" virt="non-virtual"><scope>tf::Worker</scope><name>queue_size</name></member>
<member refid="classtf_1_1Worker_1a0f36eeb628ab3803180651682f5821f3" prot="private" virt="non-virtual"><scope>tf::Worker</scope><name>WorkerView</name></member>
</listofallmembers>
</compounddef>
</doxygen>