gem5  v21.1.0.2
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, ContextID id=InvalidContextID)
 
void replace (ThreadContext *tc, ContextID id)
 

Private Attributes

std::vector< Threadthreads
 

Friends

class System
 

Detailed Description

Definition at line 119 of file system.hh.

Member Function Documentation

◆ begin()

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

Definition at line 233 of file system.hh.

◆ empty()

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

Definition at line 217 of file system.hh.

References threads.

Referenced by gem5::SparcISA::FsWorkload::initState(), and gem5::System::validKvmEnvironment().

◆ end()

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

Definition at line 234 of file system.hh.

References size().

◆ findFree()

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

◆ insert()

void gem5::System::Threads::insert ( ThreadContext tc,
ContextID  id = InvalidContextID 
)
private

◆ markActive()

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

Definition at line 214 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 209 of file system.hh.

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

◆ quiesce()

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

Definition at line 171 of file system.cc.

References DPRINTFS, gem5::ArmISA::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 143 of file system.hh.

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

Friends And Related Function Documentation

◆ System

friend class System
friend

Definition at line 152 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 Tue Sep 21 2021 12:28:14 for gem5 by doxygen 1.8.17