解决方案 »
- 我R。 这次真气炸了
- 写 出 系 统 注 册 表 权 限 设 置 的 功 能 有 偿 解 决
- 碰到一个奇怪的现象,请教高手
- 向高手请教,急,在线等!!!!
- 我在程序中使用了MSXML,可是在干净的win98下无法运行,请问需要安装什么?
- 参数的问题!非常的急呀!!!
- 如何得到所有以特定hwnd为parent的窗体?马上给分!轻松拿高分。^_^
- 请问一下,在哪里有vc5下载,高分!!!
- opengles2.0绘制不出点.
- 怎样在ToolBar里加控件??
- 【Vc6.0】【Tab选项卡】【newDialog】【添加控件】【Member Varibales】
- URL中汉字转成%FF%EE%DB的格式
这里讲的子进程并非我自己写的子进程,比如是windows里的ftp.exe,我们知道,ftp这个命令是需要接受用户输入用户名和密码的,所以如果我们自己写一个控制台程序启动一个ftp子进程,那么该子进程就会一直等待着从父进程写管道中传过来的数据,子进程阻塞着,由于我们编写的是父进程,所以父进程必须要知道该子进程正在等待输入,不知如何在父进程中判断。
WaitForSingleObject(互斥对象);
scanf();
ReleaseMutex(互斥对象);父进程调用WaitForSingleObject()时可以设置一下超时时间,超时时间过后,返回失败,说明子进程等待用户输入,然后父进程去做别的事情,做完后再次调用WaitForSingleObject(),窥探一下子进程中用户是否输入完毕2)、可以在父进程中使用异步I/O,ReadFile/WriteFile异步调用,不会造成父进程的阻塞。