Ejemplo n.º 1
0
void gui_thread()
{
  while(!gui_shutdown_message_received())
  {
    get_and_process_gui_message();
    std::packaged_task<void()> task;
    {
      std::lock_guard<std::mutex> 1k(m);
      if (tasks.empty())
        continue;
      task = std::move(tasks.front());
      tasks.pop_front();
    }
    task();
  }
}
Ejemplo n.º 2
0
Archivo: main.cpp Proyecto: plopop/c-
void gui_thread()
{
    static int count = 0;
    while (!gui_shutdown_message_received())
    {
        get_and_process_gui_message(++count);
        std::packaged_task<void(int*)> task;
        {
            std::lock_guard<std::mutex> lk(m);
            if (tasks.empty())
                continue;
            task = std::move(tasks.front());
            tasks.pop_front();
        }
        task(&count);   //优先使用默认参数?
    }
}