У меня есть приложение python, которое использует многопоточность для выполнения нескольких вызовов API. Мне нужно, чтобы потоки выполняли вызовы API внутри оператора try / исключением, и когда я запускаю свою программу без соединения inte rnet, она попадает в предложение exc (URLError). Проблема в том, что я хочу, чтобы потоки подождали, пока соединение с inte rnet снова не станет активным.
Если я создаю 10 потоков, я получаю 10 сообщений об ошибках. Как я могу заставить другие потоки ждать, пока соединение inte rnet снова станет активным?
Вот функция, которую выполняет каждый поток:
def function_thread():
for i in range (3): #I try to do the API call 3 times
try:
#Here is where I do the API call
except urllib.error.URLError: #Error: Name or service not known
print('Revise su conexion a internet')
self.isConnected = False
break #This break statement will lead to the if condition below
else:
break #This break will stop the cycle cause the API call was successful
else:
#Here is where I need to deal with user DISCONNECTED
if not self.isConnected:
#Here I do the same as the else statement above
Я ищу решение, которое не ' Это приводит к зависанию процессора. Я читал некоторые ответы из stackoverflow, но все они рекомендуют использовать некоторое время l oop, и это заставляет мой процессор перегружаться.