почему. Код: https://dpaste.org/ndkNN
профайлер показал что проблема в строке for data in yield_data(1000):
Я переписал так:
@profile
def main() -> None:
with Pool(processes=4) as pool:
fs: list[AsyncResult] = []
json_backend = BuiltinJsonBackend()
# json_backend = OrjsonBackend()
with zipfile.ZipFile('egrul.json.zip') as archive:
for sample in archive.namelist()[:1000]:
with archive.open(sample) as jsondata:
future = pool.apply_async(decoder, (jsondata, json_backend))
fs.append(future)
for result in fs:
result.wait()
и утечка прекратилась. Где я протупил?
актуально
На другой версии запусти
Обсуждают сегодня