有人可以帮助我解决以下问题。我会很感激的。
我试图同时运行多个进程。当我第一次这样做时,它可以正常工作。但是,当我第二次运行它时,它不能正常工作。它需要一些时间,并在5分钟内完成,而第一次需要30秒才能完成。当我查看资源监视时,我发现在第一次运行后,有多个进程“ python 2.7”在CPU列中具有零到十个值(0或10)。如果我重新启动python并运行代码,则第一次可以正常运行。之后,它再次停止正常工作。我该如何设定可持续的工作?
import nltk
import concurrent.futures
def try_my_operation(k):
sentences= nltk.sent_tokenize(k)
return sentences
executor=concurrent.futures.ProcessPoolExecutor()
futures = [executor.submit(try_my_operation, data['text'][i]) for i in range(0,data.shape[0])]
concurrent.futures.wait(futures)
executor=concurrent.futures.ProcessPoolExecutor(1)
executor.shutdown(wait=False)
gc.collect()