Jest jakiś sposób na włączenie danego zadania(funkcji) co zadaną ilość czasu przy jednoczesnej możliwości zatrzymania w dowolnym momencie?
Na wejściu jest parametr z ilością czasu, który jest wartością odstępu czasowego. Po odpowiednich sprawdzeniach, tworzony będzie wątek, którym będzie właśnie to zadanie wykonywane co dany czas. Konieczne będzie jego 'ubicie' i zastąpienie nowym w razie potrzeby.
LOOP_PERIOD = 0
def pepare_and_send():
while not LOOP_SWITCH:
msg = EmailMessage()
msg['Subject'] = "Temat"
msg['From'] = 'from@gmail.com'
msg['To'] = 'to@gmail.com'
msg.set_content('Treść')
smtp = smtplib.SMTP("smtp.gmail.com", 587)
smtp.ehlo()
smtp.starttls()
smtp.ehlo()
smtp.login('login', 'password')
smtp.send_message(msg)
w powyższym kodzie funkcji docelowo będę chciał wykorzystać zmienną LOOP_PERIOD(wartość ustawiana w funkcji obsługującej otrzymywanie parametrów) jako wartość odstępu. LOOP_SWITCH miało być flagą, która zakończy funkcję-wątek.