线程化:在C ++ Cinder应用程序的后台进行处理,以保持UI响应

时间:2011-03-01 20:50:55

标签: c++ image background

我很高兴今天下午几个小时的黑客攻击后让我的第一个C ++应用程序正常运行。该应用将X维度换成视频中的时间维度。

有关如何优化源代码的任何建议都会受到欢迎,但我对如何在update()中执行的图像处理感兴趣,其方式不会使应用程序如此反应迟钝

(在libcinder论坛中转发:http://forum.libcinder.org/#Topic/23286000000669039

1 个答案:

答案 0 :(得分:1)

答案似乎是线程化。它与Cinder一样:

void MyApp::setup()
{
  thread(&MyApp::processFrame, this);
}
void MyApp::processFrame()
{
  // TODO define mFrameTemp here
  // Copy to the texture which we'll actually render
  mFrame = mFrameTemp;
}
void MyApp::draw()
{
  if (mFrame)
    gl::draw(mFrame, mFrame.getBounds());
}