载入中...
搜索中...
未找到
eve::thread::JobSystemThreadPool::State结构体 参考

Public 成员函数

JobImpl * createJobLocked (JobScope scope, JobFunc body, JobFunc onComplete)
 
void scheduleLocked (JobImpl *job)
 
void enqueueLocked (JobImpl *job)
 
void runJob (JobImpl *job)
 
void completeJob (JobImpl *job, bool ok)
 
void fireCompletion (JobImpl *job)
 
void recordError (JobImpl *job, const std::string &message)
 
void releaseDependents (JobImpl *job)
 
void waitJob (JobImpl *job)
 
void waitFrameJobs ()
 
int autoChunk (int count) const
 

静态 Public 成员函数

static void workerLoop (State *state)
 

Public 属性

std::mutex mu
 
std::condition_variable cv
 
std::deque< JobImpl * > ready
 
int outstanding = 0
 
int outstandingFrame = 0
 
int workerCount = 0
 
bool stopping = false
 
FrameArena arena
 

详细描述

在文件 JobSystemThreadPool.cpp101 行定义.

成员函数说明

◆ autoChunk()

int eve::thread::JobSystemThreadPool::State::autoChunk ( int  count) const

在文件 JobSystemThreadPool.cpp388 行定义.

◆ completeJob()

void eve::thread::JobSystemThreadPool::State::completeJob ( JobImpl *  job,
bool  ok 
)

在文件 JobSystemThreadPool.cpp279 行定义.

引用了 ok.

◆ createJobLocked()

JobImpl * eve::thread::JobSystemThreadPool::State::createJobLocked ( JobScope  scope,
JobFunc  body,
JobFunc  onComplete 
)

在文件 JobSystemThreadPool.cpp216 行定义.

引用了 arena, body, onComplete, ptr , 以及 scope.

◆ enqueueLocked()

void eve::thread::JobSystemThreadPool::State::enqueueLocked ( JobImpl *  job)

在文件 JobSystemThreadPool.cpp236 行定义.

◆ fireCompletion()

void eve::thread::JobSystemThreadPool::State::fireCompletion ( JobImpl *  job)

在文件 JobSystemThreadPool.cpp307 行定义.

引用了 eve::Exception::what().

◆ recordError()

void eve::thread::JobSystemThreadPool::State::recordError ( JobImpl *  job,
const std::string &  message 
)

在文件 JobSystemThreadPool.cpp321 行定义.

◆ releaseDependents()

void eve::thread::JobSystemThreadPool::State::releaseDependents ( JobImpl *  job)

在文件 JobSystemThreadPool.cpp328 行定义.

◆ runJob()

void eve::thread::JobSystemThreadPool::State::runJob ( JobImpl *  job)

在文件 JobSystemThreadPool.cpp243 行定义.

引用了 ok , 以及 eve::Exception::what().

◆ scheduleLocked()

void eve::thread::JobSystemThreadPool::State::scheduleLocked ( JobImpl *  job)

在文件 JobSystemThreadPool.cpp227 行定义.

◆ waitFrameJobs()

void eve::thread::JobSystemThreadPool::State::waitFrameJobs ( )

在文件 JobSystemThreadPool.cpp370 行定义.

◆ waitJob()

void eve::thread::JobSystemThreadPool::State::waitJob ( JobImpl *  job)

在文件 JobSystemThreadPool.cpp346 行定义.

◆ workerLoop()

void eve::thread::JobSystemThreadPool::State::workerLoop ( State state)
static

在文件 JobSystemThreadPool.cpp393 行定义.

引用了 state.

类成员变量说明

◆ arena

FrameArena eve::thread::JobSystemThreadPool::State::arena

在文件 JobSystemThreadPool.cpp109 行定义.

被这些函数引用 createJobLocked().

◆ cv

std::condition_variable eve::thread::JobSystemThreadPool::State::cv

在文件 JobSystemThreadPool.cpp103 行定义.

◆ mu

std::mutex eve::thread::JobSystemThreadPool::State::mu
mutable

在文件 JobSystemThreadPool.cpp102 行定义.

◆ outstanding

int eve::thread::JobSystemThreadPool::State::outstanding = 0

在文件 JobSystemThreadPool.cpp105 行定义.

◆ outstandingFrame

int eve::thread::JobSystemThreadPool::State::outstandingFrame = 0

在文件 JobSystemThreadPool.cpp106 行定义.

◆ ready

std::deque<JobImpl *> eve::thread::JobSystemThreadPool::State::ready

在文件 JobSystemThreadPool.cpp104 行定义.

◆ stopping

bool eve::thread::JobSystemThreadPool::State::stopping = false

在文件 JobSystemThreadPool.cpp108 行定义.

◆ workerCount

int eve::thread::JobSystemThreadPool::State::workerCount = 0

在文件 JobSystemThreadPool.cpp107 行定义.


该结构体的文档由以下文件生成: