我在我的RPi上运行这个程序(sudo ais_接收协议-d—tcp):
https://github.com/chgans/gr-ais
我已经运行了它,可以创建一个输出文件。我无法使TCP服务器选项正常工作。Netstat—tcp不显示任何内容。Telnet正在…连接被拒绝。我想可能是代码错误:
conns = [] #active connections
if options.tcp is True:
s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
s.bind(('', 9987))
s.listen(1)
s.setblocking(0)
try:
while 1:
if options.tcp is True:
try:
conn, addr = s.accept()
conns.append(conn)
print "Connections: ", len(conns)
except socket.error:
pass
if not queue.empty_p():
while not queue.empty_p():
msg = queue.delete_head() # Blocking read
sentence = msg.to_string()
if options.tcp is True:
for conn in conns[:]:
try:
conn.send(sentence + "\n")
except socket.error:
conns.remove(conn)
print "Connections: ", len(conns)
else:
print sentence
sys.stdout.flush()
elif runner.done:
if options.tcp is True:
s.close()
break
else:
time.sleep(0.1)
我唯一能想到的另一个错误是,如果没有数据(在我的办公室中没有),那么套接字永远不会绑定。我试过手动输入ip的引号,引号外,给它赋值一个变量。。。如果在数据可用之前它还不能连接,我该如何改变呢?我正在考虑移除:
^{pr2}$这样无论队列中是否有数据,它都会做其他事情??我只是随便猜一下。谢谢。任何帮助都将不胜感激。在
目前没有回答
相关问题 更多 >
编程相关推荐