libgo icon indicating copy to clipboard operation
libgo copied to clipboard

windows下的问题

Open bigbao9494 opened this issue 5 years ago • 3 comments

下面的这些BUG,感觉确实有,我就把sample4_echo修改成一个简单的windows下的server/client程序 就使用connet连接服务器,send/recv收发数据,却不能正常工作,总不能写网络程序非得使用boost.asio吧

1、connet问题可能是: connect_mode_hook函数中有BUG,这个if判断有问题, 应该修改成if (res < 0 && WSAGetLastError() != WSAEINPROGRESS && WSAGetLastError() != WSAEWOULDBLOCK)

if (res < 0 && WSAGetLastError() != WSAEINPROGRESS) { ErrnoStore es; setNonblocking(s, false); return res; } 2、感觉read_mode_hook也有BUG,使用recv()去读socket数据时不能正常工作,暂时未找到BUG在哪儿

bigbao9494 avatar Apr 03 '19 06:04 bigbao9494

为什么要这样改呢?

yyzybb537 avatar Apr 04 '19 06:04 yyzybb537

@yyzybb537 原代码在win下使用时,connect调用后会立即返回-1,getlasterror 返回10035 (即WSAEWOULDBLOCK)

hxlh avatar Oct 23 '21 13:10 hxlh

@yyzybb537 确实存在这个问题,@bigbao9494 他这样改完就可以了

mengge666shuai avatar Nov 30 '23 06:11 mengge666shuai