in reply to Threaded file access

++pg
++browserUk

Beat me to it! but Threads::Queue is the first place I'd suggest you look to solve your problem.

Just out of interest , what are your 100 threads doing? serving content to multiple connections ? I thought you might refer to UDP Broadcaster to see a working example of using a queue, though now I see that it uses the 5.8 threads, threads::shared::queue , but implementation is similar.