所以我正在运行两个覆盆子pi。一个是充当热点(不能记住确切的软件,DCP的东西吗?),另一个是通过WiFi连接到它。
无论如何,我希望这个连接在启动时继续,但问题是,它只能在我完全同时运行程序时运行,并且循环似乎失败了。
所以这是我的服务器。
Host = '' #I have my specific address here
PORT = 8000
s= socket(AF_INET, SOCK_STREAM)
def CamConn():
s.bind((Host, PORT))
s.listen(24) # I eventually want 24 rpi connected
Conn, addr = s.accept()
Conn.settimeout(1)
通过tkinter按钮调用CamConn()。
我的客户
HOST= ''
PORT= 8000
s= socket(AF_INET, SOCK_STREAM)
s.connect((HOST, PORT))
这里最大的问题是它们有点连接,但实际上并不是......地址变为"在使用中"我必须重新启动服务器以使其再次免费。我尝试过使用异常,但遇到了同样的问题。老实说,我不知道为什么它只有一半连接?
编辑:
伙计们,我最终会把客户端放在一个元组中,所以不需要线程化。
我使用after mainloop来确保插座并发送和接收必要的内容。
我问的是,为什么这个连接在通过按钮呼叫时无法正常工作。客户端将挂起,直到按下按钮,它将识别连接,但它将无法创建可以发送或接收数据的连接。
编辑2:我还应该提到,我每秒都向所有其他客户广播相同的信息。服务器收到数据的唯一时间是选择了一个选项,用于发送照片。