-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathpy_ad_2_2.py
More file actions
45 lines (32 loc) · 1.02 KB
/
py_ad_2_2.py
File metadata and controls
45 lines (32 loc) · 1.02 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
"""
Section 2
Parallelism with Multiprocessing - multiprocessing(1) - Join, is_alive
Keyword - multiprocessing, processing state
"""
from multiprocessing import Process
import time
import logging
# 프로세스 실행 함수
def proc_func(name):
print("Sub-Process {}: starting".format(name))
time.sleep(3)
print("Sub-Process {}: finishing".format(name))
def main():
# Logging format 설정
format = "%(asctime)s: %(message)s"
logging.basicConfig(format=format, level=logging.INFO, datefmt="%H:%M:%S")
# 함수 인자 확인
p = Process(target=proc_func, args=('First',))
logging.info("Main-Process : before creating Process")
# 프로세스 시작
p.start()
logging.info("Main-Process : During Process")
# logging.info("Main-Process : Terminated Process")
# p.terminate()
logging.info("Main-Process : Joined Process")
p.join()
# 프로세스 상태 확인
print(f'Process p is alive: {p.is_alive()}')
# 메인 시작
if __name__ == '__main__':
main()