Re: Как между процессами синхронизироваться?
От: mayevski  
Дата: 30.05.04 09:21
Оценка:
Здравствуйте, Silver_s, Вы писали:

S_>Непонятно зачем порезали Event'ы

S_> Именованый межпроцессный Event создать нельзя. Остался только Mutex именованый но этого не достаточно.
S_> А если потребуется например такая фича, один процесс запускает другой процесс и ждет пока он не просигнализирует об окончании загрузки.
S_> Есть два варианта либо в цикле со Sleep'ами опрашивать пока загружаемый процесс Mutex не захватит. Либо по человечески сделать — через WinAPI
S_> ManualResetEvent сделать. Только вот затрудняюсь предположить не будет ли конфликтов каких то с .Net Threading, если WinAPI синхронизацию
S_> использовать. Не шаманство ли это?

С именоваными event'ами проблема на платформах, отличных от Win32. Да и начальная специфика проектов .Net (веб-сервисы, ASP.NET) не предполагала широкой межпроцессной синхронизации. Мы сделали свой человеческий Event, наследника от WaitHandle, через DLLImport. Там, правда, возникнут сложности с переносом на MONO и прочее, но это — как доберемся, решим. Named event'ы на базе посиксных и sys5 семафоров уже есть, так что перетянем в C# ...

С уважением,
Евгений Маевский
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.