Как безопасно завершить цикл python?

#elasticsearch #amazon-s3 #stream

#elasticsearch #amazon-s3 #поток

Вопрос:

Я создал программу на python для потоковой передачи данных из elasticsearch в корзину S3. Поскольку это будет непрерывный поток, я хотел бы реализовать способ завершения программы после завершения полного цикла.

У меня есть что-то вроде:

 While True:
timestamp = datetime.datetime.utcnow()
sizeMb = 0

Open Scroll with filter

    While (scroll_size > 0):
        Start scrolling through pages and add docs to the data variable
        
        if (processTime > 60s or size of data compressed > 3Mb):
            break

    Write data to file in S3 bucket
  

Есть ли способ импортировать и повторно импортировать другой файл и проверить переменную в While True: предложении или еще лучше в конце скрипта, и если для нее установлено значение True, то прервать?

Ответ №1:

Извините, я ответил на свой собственный вопрос в процессе. Я использую Python 3.7, я создал файл под названием killProcess.py и иметь простой kill = false внутри. Я добавил в imports import killProcess, importlib и в нижней части цикла я добавил

 While True:
   #code within loop

   importlib.reload(killProcess)
   if killProcess.kill:
       break
  

и делает трюк