123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172 |
- import time
- import multiprocessing
- import psutil
- def test():
- for _ in range(3):
- print(f"{multiprocessing.current_process().name} - {time.time()}")
- time.sleep(2)
- def get_os_process():
- for proc in psutil.process_iter():
- if proc.name() == 'python.exe':
- print(proc.name())
- def test_prc_1():
- """Базовые методы процессов"""
- prc = multiprocessing.Process(target=test, name="prc-1")
- prc.start()
- print("Процесс запущен")
- # # get_os_process()
- prc.join() # ждет завершения процесса
- while True:
- print(prc.is_alive())
- print(prc.pid)
- time.sleep(5)
- prc.terminate() # убить процесс
- def test_prc_2():
- """Метод join - ожидание завершения процесса"""
- prc = []
- for _ in range(3):
- pr = multiprocessing.Process(target=test)
- prc.append(pr)
- pr.start()
- for i in prc:
- i.join()
- print("Все процессы завершены")
- class Process(multiprocessing.Process):
- def run(self):
- print("work")
-
- def class_test():
- pr = Process()
- pr.start()
- if __name__ == '__main__':
-
- # test_prc_2()
- # prc = multiprocessing.Process(target=test, name="prc-1")
- # prc.start()
- # print("Процесс запущен")
- # # get_os_process()
- # prc.join() # ждет завершения процесса
- # while True:
- # print(prc.is_alive())
- # print(prc.pid)
- # time.sleep(5)
- # prc.terminate() # убить процесс
|