Коллеги, есть вопрос. Я работаю с MemoryMappedFile из управляемого кода.
В начале файла хранится смещение, по которому другие процессы могут записывать свою информацию. Вопрос в том, как обеспечить межпроцессную синхронизацию для значения этого смещения. В неуправляемом коде все просто, я получаю адрес файла, привожу область памяти к int и делаю ему InterlockedIncrement. Но как быть в управлемом коде — не совсем понятно. Буду благодарен за любые советы. Заранее спасибо!
Многоие знания сулят нам многие печали, и умножая знания мы умножаем печаль. (с) Екклезиаст.
Здравствуйте, Seneca, Вы писали:
S>Коллеги, есть вопрос. Я работаю с MemoryMappedFile из управляемого кода. S>В начале файла хранится смещение, по которому другие процессы могут записывать свою информацию. Вопрос в том, как обеспечить межпроцессную синхронизацию для значения этого смещения. В неуправляемом коде все просто, я получаю адрес файла, привожу область памяти к int и делаю ему InterlockedIncrement. Но как быть в управлемом коде — не совсем понятно. Буду благодарен за любые советы. Заранее спасибо!
А в чем проблема-то ? Если уж ты вызываешь CreateFileMapping и т.д. через PInvoke, кто мешает вызвать и InterlockedIncrement ?
Здравствуйте, HowardLovekraft, Вы писали:
HL>Здравствуйте, Pavel Dvorkin, Вы писали:
PD>>кто мешает вызвать и InterlockedIncrement ? HL>Велосипедизм? Interlocked Class.
Если можешь, объясни, как применить этот класс к неуправляемой памяти. Напоминаю
>Я работаю с MemoryMappedFile из управляемого кода. В начале файла хранится смещение, по которому другие процессы могут записывать свою информацию