gem5  v22.1.0.0
Classes | Public Member Functions | Private Member Functions | Private Attributes | Friends | List of all members
gem5::System::Threads Class Reference

#include <system.hh>

Classes

class  const_iterator
 
struct  Thread
 

Public Member Functions

ThreadContextfindFree ()
 
ThreadContextoperator[] (ContextID id) const
 
void markActive (ContextID id)
 
int size () const
 
bool empty () const
 
int numRunning () const
 
int numActive () const
 
void quiesce (ContextID id)
 
void quiesceTick (ContextID id, Tick when)
 
const_iterator begin () const
 
const_iterator end () const
 

Private Member Functions

Threadthread (ContextID id)
 
const Threadthread (ContextID id) const
 
void insert (ThreadContext *tc)
 
void replace (ThreadContext *tc, ContextID id)
 

Private Attributes

std::vector< Threadthreads
 

Friends

class System
 

Detailed Description

Definition at line 116 of file system.hh.

Member Function Documentation

◆ begin()

const_iterator gem5::System::Threads::begin ( ) const
inline

Definition at line 230 of file system.hh.

◆ empty()

bool gem5::System::Threads::empty ( ) const
inline

Definition at line 214 of file system.hh.

References threads.

Referenced by gem5::SparcISA::FsWorkload::initState().

◆ end()

const_iterator gem5::System::Threads::end ( ) const
inline

Definition at line 231 of file system.hh.

References size().

◆ findFree()

ThreadContext * gem5::System::Threads::findFree ( )

◆ insert()

void gem5::System::Threads::insert ( ThreadContext tc)
private

◆ markActive()

void gem5::System::Threads::markActive ( ContextID  id)
inline

Definition at line 211 of file system.hh.

References gem5::System::Threads::Thread::active, and thread().

Referenced by gem5::System::markWorkItem().

◆ numActive()

int gem5::System::Threads::numActive ( ) const
inline

◆ numRunning()

int gem5::System::Threads::numRunning ( ) const

◆ operator[]()

ThreadContext* gem5::System::Threads::operator[] ( ContextID  id) const
inline

Definition at line 206 of file system.hh.

References gem5::System::Threads::Thread::context, and thread().

◆ quiesce()

void gem5::System::Threads::quiesce ( ContextID  id)

Definition at line 145 of file system.cc.

References DPRINTFS, gem5::VegaISA::t, and thread().

Referenced by gem5::ThreadContext::quiesce().

◆ quiesceTick()

void gem5::System::Threads::quiesceTick ( ContextID  id,
Tick  when 
)

◆ replace()

void gem5::System::Threads::replace ( ThreadContext tc,
ContextID  id 
)
private

◆ size()

int gem5::System::Threads::size ( ) const
inline

◆ thread() [1/2]

Thread& gem5::System::Threads::thread ( ContextID  id)
inlineprivate

◆ thread() [2/2]

const Thread& gem5::System::Threads::thread ( ContextID  id) const
inlineprivate

Definition at line 140 of file system.hh.

References gem5::ArmISA::id, size(), and threads.

Friends And Related Function Documentation

◆ System

friend class System
friend

Definition at line 149 of file system.hh.

Member Data Documentation

◆ threads

std::vector<Thread> gem5::System::Threads::threads
private

The documentation for this class was generated from the following files:

Generated on Wed Dec 21 2022 10:23:31 for gem5 by doxygen 1.9.1