6

私はいくつかの計算を行い、結果をtxtファイルに書き込む関数compute_clusterを呼び出そうとする次のコードを持っています(各プロセスはその結果を別々のtxtファイルに個別に書き込みます)が、次のコードを実行すると:

def main():
  p = Pool(19)
  p.map(compute_cluster, [(l, r) for l in range(6, 25) for r in range(1, 4)]) 
  p.close()
if __name__ == "__main__":
   main()                

次のエラーでクラッシュします。

File "RMSD_calc.py", line 124, in <module>
  main()                
File "RMSD_calc.py", line 120, in main
  p.map(compute_cluster, [(l, r) for l in range(6, 25) for r in range(1, 4)]) 
File "/usr/local/lib/python2.7/multiprocessing/pool.py", line 225, in map
  return self.map_async(func, iterable, chunksize).get()
File "/usr/local/lib/python2.7/multiprocessing/pool.py", line 522, in get
  raise self._value
  KeyError: 0

「KeyError: 0」の意味をオンラインで検索したところ、役立つものは何も見つからなかったので、このエラーが発生する理由を教えてください。

4

1 に答える 1