GetCommand
GetCommand 函数用于获取排队等待应用到设备的下一条命令。 请求函数后,此函数将等待下一个命令。
语法
C
HRESULT IClientVirtualDevice::GetCommand (
DWORD dwTimeOut,
VDC_Command** const ppCmd
);
参数
ppCmd 成功返回命令后,该参数将返回要执行的命令的地址。 返回的内存是只读的。 命令完成后,会将此指针传递到 CompleteCommand 例程。 有关每个命令的详细信息,请参阅“命令”。
dwTimeOut 此为等待时间(毫秒)。 使用 INFINTE 可无限期等待。 使用 0 可轮询命令。 如果当前无可用的命令,则返回 VD_E_TIMEOUT。 如果发生超时,客户端将决定后续操作。
返回值
| 返回值 | 说明 |
|---|---|
| NOERROR | 已获取命令。 |
| VD_E_CLOSE | 服务器已关闭该设备。 |
| VD_E_TIMEOUT | 无可用命令且超时时间已过。 |
| VD_E_ABORT | 客户端或服务器已使用 SignalAbort 执行强制关闭。 |
备注
如果返回 VD_E_CLOSE,表示 SQL Server 已关闭设备。 这是正常关闭操作的一部分。 在所有设备均已关闭后,客户端将调用 IClientVirtualDeviceSet2::Close 以关闭虚拟设备集。
如果必须阻塞此例程以等待命令,则该线程将停留在可发出警报的状态。
「喜欢这篇文章,您的关注和赞赏是给作者最好的鼓励」
关注作者
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文章的来源(墨天轮),文章链接,文章作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。




