V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX 提问指南
xdeng
V2EX  ›  问与答

谁遇到过win的 完成端口 GetQueuedCompletionStatus 函数返回121错误的问题?

  •  
  •   xdeng · 2014-01-12 19:17:23 +08:00 · 5305 次点击
    这是一个创建于 3993 天前的主题,其中的信息可能已经有所发展或是发生改变。
    9 条回复    1970-01-01 08:00:00 +08:00
    timonwong
        1
    timonwong  
       2014-01-12 19:23:04 +08:00
    Connecion timeout?
    xdeng
        2
    xdeng  
    OP
       2014-01-12 19:42:38 +08:00
    @timonwong BOOL bReturn = GetQueuedCompletionStatus(
    pIOCPModel->m_hIOCompletionPort,
    &dwBytesTransfered,
    (PULONG_PTR)&pSocketContext,
    &pOverlapped,
    INFINITE); 我可以是无线等待的啊
    timonwong
        3
    timonwong  
       2014-01-12 20:04:13 +08:00
    @xdeng
    这个不管GetQueuedCompletionStatus,而是之前的调用,比如ConnectEx、AcceptEx等等。
    xdeng
        4
    xdeng  
    OP
       2014-01-12 20:36:12 +08:00
    @timonwong 不是 啊 我是在 GetQueuedCompletionStatus 失败的 然后获取到的错误值 是 121
    timonwong
        5
    timonwong  
       2014-01-12 22:26:37 +08:00   ❤️ 1
    @xdeng
    我知道,这个就是完成端口的含义,那些ConnectEx, AcceptEx并没有“完成”
    xdeng
        6
    xdeng  
    OP
       2014-01-12 23:20:55 +08:00
    @timonwong 能详解 一下吗? 我被这个问题困死了
    xdeng
        7
    xdeng  
    OP
       2014-01-12 23:21:38 +08:00
    @timonwong 遇到121该怎么处理 是跳过还是失败跳出?
    timonwong
        8
    timonwong  
       2014-01-13 11:27:54 +08:00   ❤️ 1
    @xdeng
    看场景了,这个如果你是服务器端一般就忽略, continue(121: ERROR_SEM_TIMEOUT,一般对应三次握手失败,这种情况跳出合适?),客户端可能需要重新连接(仍然看场景)。
    xdeng
        9
    xdeng  
    OP
       2014-01-13 15:44:30 +08:00
    @timonwong 非常感谢 我试试
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   1524 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 20ms · UTC 17:05 · PVG 01:05 · LAX 09:05 · JFK 12:05
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.