Python 多处理pickle.load()::EOFError-输入不足

Python 多处理pickle.load()::EOFError-输入不足,python,python-3.x,asynchronous,multiprocessing,pickle,Python,Python 3.x,Asynchronous,Multiprocessing,Pickle,我有一个问题,我正在运行一个CPU繁重的多处理任务,该任务读取和写入一个pickle文件,以避免在相同的输入上运行计算 我有一个队列用于文件写入函数[未显示],但不用于读取函数。大多数情况下,当我运行多进程时,我会收到一个“EOFError-输入用完”异常。我最好的猜测是两个进程试图同时读取文件(通过pickle_read) def pickle_read(category): with open("completed_search.txt", "rb") as pickle_set:

我有一个问题,我正在运行一个CPU繁重的多处理任务,该任务读取和写入一个pickle文件,以避免在相同的输入上运行计算

我有一个队列用于文件写入函数[未显示],但不用于读取函数。大多数情况下,当我运行多进程时,我会收到一个“EOFError-输入用完”异常。我最好的猜测是两个进程试图同时读取文件(通过pickle_read)

def pickle_read(category):
    with open("completed_search.txt", "rb") as pickle_set:
        try:
            return pickle.load(pickle_set)[category]
        except EOFError as e:
            handle_error(e)


if reg in pickle_read('region'):
    continue
在满足条件(即不返回非类型)的同时,如何对进程进行排队以允许同步读取