У меня есть следующий тестовый код ниже.Мой вопрос заключается в том, как я могу добавить новые активные темы после нажатия клавиш + ввод, не останавливая другие активные бесконечные циклы.На данный момент я знаю, как остановить все потоки после нажатия клавиши + ввод и только затем добавить новый и затем перезапустить.
Чтобы лучше понять, что я хотел бы получить в конце: мой полный проект уже есть https://github.com/ArtyomKozyrev1989/ICMP-PING-MONITOR
Это работает, но я хотел бы добавить возможность добавить дополнительные IP-адреса после запуска программы без остановки активных сеансов пинга.
import threading
import time
def hello(e):
while(e.is_set()):
print("hello")
time.sleep(2)
def hi(e):
while(e.is_set()):
print("hi")
time.sleep(2)
def key_press(e):
a=input()
e.clear()
def circle():
e=threading.Event()
e.set()
MrBoolean=True
while(MrBoolean):
thr=[]
thr.append(threading.Thread(target=hello, args=(e,)))
thr.append(threading.Thread(target=hi,args=(e,)))
thr.append(threading.Thread(target=key_press,args=(e,)))
for i in thr:
i.start()
for i in thr:
i.join()
print("It is the end!")
MrBoolean=False
time.sleep(15)
def main():
while(True):
circle()