Concurrent.futures - Thread completion goes from 30% to 100% instantly

Hi,

The write to disk inside concurrent.futures.as_completed … is causing the thread completion to print incorrectly.

https://stackoverflow.com/questions/79593818/concurrent-futures-not-showing-thread-completion

The In and Out … is suppose to finish at the same time. Yet gradually the Out finishes later and later … until eventually … there are 20 Outs still needing to print even though the threads have all finished long ago … so instead the Outs … simply dump all their remaining percentages in 1 second … after the last threads true percent In is finished … somehow … this is occuring due to the write disk task

How can I print the correct time of the threads completion within concurrent.futures.as_completed?