in reply to choosing threads
Threads are not most efficient way to do parallel IO. I'd used something like Event for such task.
Update: thought actually I've looked at Coro and it seems it can make the thing.