Тайм-аут сокета не работает Python lora
Я noob с python и lora, я хочу открыть сокет ждать сообщения, если нет сообщения, то сделать что-то еще, мой код пока:
from network import LoRa
import socket
import machine
import time
import binascii
import network
n = 0
try:
the_sock = socket.socket(socket.AF_LORA, socket.SOCK_RAW)
except socket.error:
exit('Error creating socket.')
the_sock.settimeout(5)
while True:
try:
n=n+1
print("Hola"+str(n))
time.sleep(1)
the_sock.setblocking(True)
ack = the_sock.recv(HEADER_SIZE)
except socket.timeout, e:
err = e.args[0]
print(err)
break`
Проблема в том, что тайм-аут не работает, я проверил некоторые ответы, но код выглядит хорошо для меня, не могли бы вы помочь мне, пожалуйста?
С уважением
1 ответ
Вам не нужен "socket.error" в вас, кроме оператора, вы должны просто сказать, кроме. Просто подсказка, для вашего утверждения "n=n+1" вы можете просто сделать "n+=1". Просто помогает ускорить вещи, я думаю. Для вашего оператора "break" в конце, после него есть метка, которая может вызвать ошибку. Во всяком случае, я надеялся, что помог каким-то образом! Примечание: я не кодирую LORA. Я кодирую INET и SOCK_DGRAM, SOCK_STREAM. Надеюсь, я помог!