pyBluez如何停止蓝牙socket accept()调用?

2024-06-08 12:00:01 发布

您现在位置:Python中文网/ 问答频道 /正文

我使用python和pyBluez lib构建了一个蓝牙服务器,代码如下:

import bluetooth

socket = bluetooth.BluetoothSocket(bluetooth.RFCOMM)
socket.bind(("", bluetooth.PORT_ANY))
socket.listen(1)

while True:
  try:
     client_socket, client_info = socket.accept()
  except Exception as ex:
     print(str(ex))

   #read client data..   
   while True:
      try:
         data = client_socket.recv(1024)
         #do something...
      except Exception as ex:
         print(str(ex))
         break

当客户端连接时,它工作得很好,但问题是…,如果没有任何客户端要连接,线程将继续使用accept()方法,如何停止bluetooth socket accept()方法?你知道吗


Tags: clienttrue客户端dataasexceptionsocketex