コード例 #1
0
ファイル: RenderManager.cpp プロジェクト: 281627166/renderdoc
void RenderManager::AsyncInvoke(RenderManager::InvokeMethod m)
{
	InvokeHandle *cmd = new InvokeHandle(m);
	cmd->selfdelete = true;

	PushInvoke(cmd);
}
コード例 #2
0
ファイル: RenderManager.cpp プロジェクト: 281627166/renderdoc
void RenderManager::BlockInvoke(RenderManager::InvokeMethod m)
{
	InvokeHandle *cmd = new InvokeHandle(m);

	PushInvoke(cmd);

	while(!cmd->processed) {}
}
コード例 #3
0
ファイル: RenderManager.cpp プロジェクト: kvark/renderdoc
void RenderManager::BlockInvoke(RenderManager::InvokeMethod m)
{
  InvokeHandle *cmd = new InvokeHandle(m);

  PushInvoke(cmd);

  for(;;)
  {
    if(cmd->processed.tryAcquire())
      break;
  }

  delete cmd;
}