我有一个关于python中socket
的问题。
我在程序中使用udp-protocol
。程序中通常会发生以下错误。我的计划停留在一个点上。使用pstack pid
,详细信息如下:
$ pstack 12776
#0 0x000000318b20e9a3 in __recvfrom_nocancel () from /lib64/libpthread.so.0
#1 0x00007f2fbc14fad1 in sock_recvfrom_guts () from /home/work/local/lib/python2.7/lib-dynload/_socket.so
#2 0x00007f2fbc14fd82 in sock_recvfrom () from /home/work/local/lib/python2.7/lib-dynload/_socket.so
#3 0x000000000049bdc0 in PyEval_EvalFrameEx ()
#4 0x000000000049c83e in PyEval_EvalFrameEx ()
#5 0x000000000049c83e in PyEval_EvalFrameEx ()
#6 0x000000000049d93e in PyEval_EvalCodeEx ()
#7 0x000000000049da52 in PyEval_EvalCode ()
#8 0x00000000004bd2f0 in PyRun_FileExFlags ()
#9 0x00000000004bd4bc in PyRun_SimpleFileExFlags ()
#10 0x000000000041608c in Py_Main ()
#11 0x000000318ae1ecdd in __libc_start_main () from /lib64/libc.so.6
#12 0x0000000000415019 in _start ()
我认为upd-protocol
应该没问题。我真的不明白为什么会这样。没有人能帮我,谢谢!python的版本是2.7.3。我的代码如下:
address = (server_ip, server_port);
s = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
s.sendto(send_buf, address)
response, addr = s.recvfrom(2048)
if response:
real_body = self.parse_response(response)
我找到了一个原因。我在我的系统中使用了udp协议代码。有时由于网络问题,客户端无法发送服务器发送的数据。 最后,在客户端使用select函数解决了这个问题。你知道吗
相关问题 更多 >
编程相关推荐