python: канал закрывается из-за ошибки при запуске процесса более 10000 раз - PullRequest
0 голосов
/ 14 апреля 2019

Я новичок в многопроцессорности.У меня есть простое вычисление, которое я хочу выполнить 500 миллионов раз, поэтому я тестировал код, который, кажется, работает до 10 тысяч запусков, но терпит неудачу, если я пытаюсь выполнить его 100 тысяч раз.

Сообщение об ошибке Iget is: [Errno 232] Канал закрывается

Я читал другие сообщения об этом сообщении об ошибке, но не мог понять, как его решить.

from scipy.stats import beta
import matplotlib.pyplot as plt
import numpy as np
import time
from datetime import datetime
import math
import concurrent.futures
import multiprocessing

def task():
    a =  0.1
    b = 0.9
    x = 0.25

    p = beta.cdf(x, a, b)
    #print(p)

def main():
    with concurrent.futures.ProcessPoolExecutor(max_workers=4) as executor:
        runs = 100000
        for i in xrange(runs):
            task1 = executor.submit(task)

if __name__ == '__main__':
    main()

Любая идеяпочему не удается выполнить большое количество прогонов?

...