多处理池挂起

时间:2019-12-19 02:56:52

标签: python multiprocessing gitpython

我已经创建了一个Pool来使用Gitpython进行git clone。有一个很大的git repo,需要比其他人更多的时间来克隆。每个过程都会为一个仓库进行克隆工作。我使用的SELECT TableA.ColumnA FROM TableA JOIN TableB ON TableA.ColumnA = TableB.ColumnB 如下:

Pool

在大多数情况下,它都能完美运行。但是通常会挂在最大的回购中。有线的是,当我只是单独克隆存储库时,它可以正常工作。因此,我想知道python multi_res = [p.apply_async(runfunc, args=(incl_info, project_root, skip_dirs,)) for incl_info in incl_infos] LogInfo('Waiting for all subprocesses done...') for i in range(len(incl_infos)): while not multi_res[i].ready(): LogInfo("Downloading now") time.sleep(5) p.close() p.join() 中是否存在某些块。

我已经跟踪了挂起的git clone过程。 git进程输出如下:

multiprocessing.Pool

git-lfs输出如下:

Process 27649 attached
read(6, 0x7ffc36dae050, 4)              = ? ERESTARTSYS (To be restarted if SA_RESTART is set)
--- SIGALRM {si_signo=SIGALRM, si_code=SI_KERNEL, si_value={int=2895997, ptr=0x2c307d}} ---
rt_sigreturn()                          = 0
read(6, 0x7ffc36dae050, 4)              = ? ERESTARTSYS (To be restarted if SA_RESTART is set)
--- SIGALRM {si_signo=SIGALRM, si_code=SI_KERNEL, si_value={int=2895997, ptr=0x2c307d}} ---
rt_sigreturn()                          = 0
read(6, 0x7ffc36dae050, 4)              = ? ERESTARTSYS (To be restarted if SA_RESTART is set)
--- SIGALRM {si_signo=SIGALRM, si_code=SI_KERNEL, si_value={int=2895997, ptr=0x2c307d}} ---
rt_sigreturn()                          = 0
read(6, 0x7ffc36dae050, 4)              = ? ERESTARTSYS (To be restarted if SA_RESTART is set)
--- SIGALRM {si_signo=SIGALRM, si_code=SI_KERNEL, si_value={int=2895997, ptr=0x2c307d}} ---
rt_sigreturn()                          = 0

等待您的帮助。

0 个答案:

没有答案