python线程池ThreadPoolExecutor.submit的数据丢失问题

Python012

python线程池ThreadPoolExecutor.submit的数据丢失问题,第1张

ThreadPoolExecutor 是 Executor 的子类,它使用线程池来异步执行调用。

关于concurrent.futures模块下的ThreadPoolExecutor类

在使用submit的时候,如果参数传进去的是生成器对象,在某些情况下,生成器对象会被消耗掉一部分或者是全部的数据

以上示例中,尝试二部分是正常且保证是没有问题

而尝试一则会在submit的时候被消耗掉一部分的数据

尝试三这里先利用tee,复制出两个副本,并且调用了其中一个转list,另一个丢给submit方法,这种情况下,数据不会产生丢失

问题一 :生成器对象为什么会在submit的时候,丢失了部分数据?

问题二 :尝试三这里复制了副本,对其中一个转list,就不会丢失数据,不转list还是会丢失数据,又是什么原理?

不知道有没知情人士可以帮忙解答下,不胜感激、

python导出csv没有数据的原因如下:首先python写入csv文件时出现数据丢失的情况,是因为在对文本数据编码的时候,要把编码后的数据写入csv中由于你没有将数据编码写入csv为中且写的编码顺序未能按要求填写,导致数据导出来没有。