Ejemplo n.º 1
0
//==============================================================================
void Threadpool::assignNewTask(U32 slot, Task* task)
{
#if !ANKI_DISABLE_THREADPOOL_THREADING
	ANKI_ASSERT(slot < getThreadsCount());
	
	if(task == nullptr)
	{
		task = &m_dummyTask;
	}
	
	m_threads[slot]->assignNewTask(task);
#else
	(*task)(slot, m_threadsCount);
#endif
}
Ejemplo n.º 2
0
//==============================================================================
void Threadpool::assignNewTask(U32 slot, Task* task)
{
	ANKI_ASSERT(slot < getThreadsCount());
	if(task == nullptr)
	{
		task = &m_dummyTask;
	}

#if !ANKI_DISABLE_THREADPOOL_THREADING
	m_threads[slot].assignNewTask(task);
#else
	Error err = (*task)(slot, m_threadsCount);

	if(err)
	{
		m_err = err;
	}
#endif
}