Как я могу завершить SSEClient без возникновения события?

#python #multithreading

Вопрос:

Я использовал эту библиотеку SSEClient Python со следующим кодом:

 client = SSEClient(url)
    for event in client:
        func(json.loads(str(event)))
 

Это выполняется внутри потока. Моя проблема в том, что я хочу завершить этот поток, но когда я пытался использовать флаги остановки, он запускался только при получении события (поскольку я предполагаю, что итератор ожидает следующего элемента).

У кого-нибудь есть какие-либо предложения о том, как завершить эту тему без необходимости возникновения другого события?

Спасибо!

Комментарии:

1. Почему именно вы хотите закончить эту тему? Можете ли вы использовать поток демона, чтобы он заканчивался, когда весь процесс завершается?

2. Я рассматривал это как последнее средство, спасибо. Мне просто нужна была функция, которая могла бы остановить прослушивание событий, отправленных на разрыв, но я не уверен, что это возможно из того, что я пробовал.

3. Я не вижу другого способа, если клиент заблокирован в ожидании, извините.

4. Не беспокойтесь, спасибо, что подтвердили, что я ничего не упустил!