zylthinking 发表于 2014-08-15 18:40

回复 10# zylthinking

我去啊, 我他妈的真实傻逼, 这比 完成端口傻逼多了


int do_udp_read(int fd, struct my_buffer* mbuf)
{
    io_context* ioc = (io_context *) mbuf;
    DWORD flags = 0, bytes = 0;
    struct sockaddr_in in;
    int sz = sizeof(sockaddr);

    int n = WSARecvFrom(fd, &ioc->wsa_buffer, 1, &bytes, &flags, (sockaddr *) &in, (LPINT) &flags, &ioc->overlap, NULL);
    DWORD code = WSAGetLastError();
    if (n == 0 || WSA_IO_PENDING == code) {
      return 0;
    }

    errno = EFAILED;
    return -1;
}

__BlueGuy_ 发表于 2014-08-15 18:51

c/unix 发表于 2014-08-15 21:11

hellioncu 发表于 2014-08-15 21:20

完成端口是异步IO,这点跟epoll之类的差别很大

zylthinking 发表于 2014-08-15 21:25

__BlueGuy_ 发表于 2014-08-15 18:51 static/image/common/back.gif
什么错 ?

标红的看不到?

__BlueGuy_ 发表于 2014-08-15 22:08

folklore 发表于 2014-08-15 22:25

回复 11# zylthinking


    这种错误看正常吧, 我写的代码的错误经常都是这种, 没有80%也有90%, 余下的大多是漏写语句。

yulihua49 发表于 2014-08-18 15:14

本帖最后由 yulihua49 于 2014-08-18 15:15 编辑

zylthinking 发表于 2014-08-15 18:40 static/image/common/back.gif
回复 10# zylthinking

我去啊, 我他妈的真实傻逼, 这比 完成端口傻逼多了

改正了,就好了吗?
请回答。
我们关心IOCP本身是否有问题。

selfrun 发表于 2014-08-19 09:37

UDP就别用完成端口了,直接用select就好。
完成端口跟linux下的AIO接口类似,跟epoll是两码事

zylthinking 发表于 2014-08-19 09:37

回复 18# yulihua49

完成端口没问题

   
页: 1 [2] 3 4 5
查看完整版本: windows 完成端口就是一个巨大的屎坑