Как правильно реализовать доступ к файлам, которые используются двумя процессами?
===================================================================================

 Добрый вечер всем!  
  
  

Пишу на С++, VS 2008, win32  
  

Вот вопрос в названии темы. Есть два процесса, в каждом процессе создается несколько потоков (1 поток = 1 обработка файла), запускаются одновременно. Как правильно реализовать доступ каждого потока разных процессов к одному и тому же файлу наиболее корректно? Собственно происходит запуск «программы А», далее сразу запускается «программа Б», создается поток в программе А, который обрабатывает 1ый файл, тут же поток в программе Б начинает считывать этот 1ый файл. Надо сделать так что бы поток программы Б сумел прочитать этот файл только по завершению обработки тем потоком программы А. Как-то так :)   
  
  

Сначала думал реализовать через критические секции, но вспомнил что они только в рамках одного процесса :( 

 Попробуйте создать mutex для каждого блокируемого файла. Насколько я помню, они вроде как разделяемые между несколькими процессами 

 Сделайте отдельный поток с очередью, который будет получать от других потоков команды на манипуляции с файлами.