er0*_*er0 11 python python-module python-multiprocessing
有没有办法在使用Python的多处理模块创建的进程中加载模块的每个进程副本?我试过这个:
def my_fn(process_args):
import my_module
my_func()
Run Code Online (Sandbox Code Playgroud)
...但my_module中的子导入会一劳永逸地加载和缓存.特别是,其中一个子导入读取一个配置文件,其值根据第一个进程的环境设置.如果我试试这个:
def my_fn(process_args):
try:
my_module = reload(my_module)
except NameError:
import my_module
Run Code Online (Sandbox Code Playgroud)
... my_module的子导入不会重新加载.
将函数放入 中my_module,例如:
def my_realod():
try:
my_sub_module = reload(my_sub_module)
except NameError:
import my_sub_module
Run Code Online (Sandbox Code Playgroud)
my_reload像这样 调用:
def my_fn(process_args):
try:
my_module = reload(my_module)
my_module.my_reload()
except NameError:
import my_module
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
971 次 |
| 最近记录: |