Решение Niels великолепно, но может быть неприменимо, если это большой файл с небольшими дельтами
Я собираюсь предположить, что ваше решение будет зависеть от:
а) блокирует ли файл P1, и вы просто хотите избавиться от конфликта,
б) нужно ли убедиться, что то, что читает P1, всегда является обновленной копией с изменениями P0, и
c) соблюдает ли P1 блокировку чтения для рассматриваемого файла.
Кроме того, ищите системные системные вызовы O / S, чтобы увидеть, можете ли вы отслеживать поведение P1 из P0 для координации процессов. Например, для Windows класс .NET System.Diagnostics.Process может содержать несколько полезных методов.