zoukankan      html  css  js  c++  java
  • 设备对象

      设备对象 是可同步的内核对象, 这意味着我们可以调用WaitForSingleObject, 并传入文件句柄, 套接字, 通信端口,等等. 当系统执行异步I/O的时候, 设备对象处于未触发状态, 一旦操作完成, 系统会将对象改变成触发状态, 这样线程就知道操作已经完成了, 这时线程就可以继续执行了.

      线程要以调用WaitForInputIdle函数来将自己挂起:
    DWORD WaitForInputIdle(HANDLE hProcess, DWORD dwMilliseconds);
    这个函数会等待由hProcess标识的进程,直到创建应用程序第一窗口的线程中没有待处理的输入为止. 这个函数对父进程 来说比较有用. 父进程可以创建一个子进程来完成 一些工作. 当父进程 调用CreateProcess的时候, 父进程可以一边继续执行, 一边让子进程进行初始化. 父进程可能需要得到子进程创建的窗口的句柄. 父进程能够知道子进程已经初始化完毕的唯一方法, 就是等待子进程, 直到它不再处理任何输入为止. 因此, 在调用CreateProcess之后 , 父进程可以调用WaitForInputIdle();
    当我们需要强制在应用程序中输入一些按键的时候, 也可以使用WaitForInputIdle. 
  • 相关阅读:
    xgzc— math 专题训练(一)
    floyd判圈算法
    CF961G Partitions
    luoguP4778 Counting swaps
    AT3913 XOR Tree(巧妙转换+状压dp)
    手动实现aop编程
    代理模式
    spring重点一:处理对象创建时间 个数以及方式
    spring helloword
    spring用来干什么,解决的问题
  • 原文地址:https://www.cnblogs.com/xiejiulong/p/3924941.html
Copyright © 2011-2022 走看看