is_in_main_process
函数私有源码
flag: bool = is_in_main_process()
函数,用来检查当前进程是否是主进程。
这一检查透过以下功能实现:
https://docs.python.org/zh-cn/3/library/multiprocessing.html#multiprocessing.parent_process
参数
输出
参数 | 类型 | |
---|---|---|
flag | bool | 若为True ,则当前进程是主进程。注意,该函数无法辨认由subprocess 模块创建的子进程。 |
范例
检查multiprocessing
库的效果
- 代码
- 结果
import multiprocessing as mproc
import subprocess
from dash_file_cache.utilities import is_in_main_process
def test_proc():
print("multiprocessing:", is_in_main_process())
print("main:", is_in_main_process())
proc = mproc.Process(target=test_proc)
proc.start()
proc.join()
proc.kill()
print(
"subprocess:",
subprocess.check_output(
[
"python",
"-c",
(
"from dash_file_cache.utilities import is_in_main_process;"
"print(is_in_main_process())"
),
],
text=True,
),
)