首页 > 解决方案 > 多处理池不执行功能

问题描述

在过去的 5 个小时里,我一直在处理这个问题,但我不知道我做错了什么。它只是打印“正在运行的池...”,但似乎没有执行该功能。它不会抛出任何错误,它只会继续运行。

conn = pymysql.connect(host, user=user,port=port,passwd=password, db=dbname)

SQL = 'SELECT * FROM Clean_SBIR LIMIT {}, 20000'

def process_data(offset):
    print('Offset original: ',offset)
    offset = offset * 20000
    print('Actual offset: ',offset)
    df = pd.read_sql((SQL).format(offset), conn)
    print(offset)
    return len(df)

if __name__ == "__main__":
    with Pool(4) as pool:
        print('Running pool...')

        result = pool.apply_async(process_data, [1,2,3])
        print(result.get())
        print(pool.map(process_data, [1,2,3]))

标签: pythonpython-3.xmultiprocessingpython-multiprocessingpool

解决方案


推荐阅读