在sleep()时如何切换到另一个例程

时间:2019-06-14 01:51:38

标签: c++ winapi

我正在编写一个使用C ++在两个窗口之间切换的程序。我希望程序在检测到鼠标移动或键盘活动时暂停切换。并在经过一定时间后恢复切换。

该程序旨在在Windows 10中运行。我在Windows之间切换的方式是:

  1. 激活窗口#1
  2. 睡眠一段时间
  3. 活动窗口#2
  4. 睡眠一会儿,然后返回到步骤1。
while (1) {
    SwitchToThisWindow(window_1_handle, true);
    cout << "Window 1 Now" << endl;
    Sleep(window_1_time * 1000);

    SwitchToThisWindow(window_2_handle, true);
    cout << "Window 2 Now" << endl;
    Sleep(window_2_time * 1000);
}

所以我的问题是:

  1. 我当前的设计可以达到目的吗?
  2. 在不轮询CPU的情况下检测鼠标和键盘活动的最佳方法是什么?
  3. 我需要2个线程来处理吗?

0 个答案:

没有答案