Возможный дубликат:
Как поделиться объекты между процессами в .Net?
Я могу сделать это для одного процесса (один .exe), но как я могу сделать это между процессами?
Возможный дубликат:
Как поделиться объекты между процессами в .Net?
Я могу сделать это для одного процесса (один .exe), но как я могу сделать это между процессами?
Это можно сделать с помощью удаленного взаимодействия. Ваш класс должен наследовать от MarshalByRefObject, что даст ваш клиенты прокси к реальному объекту.
Вам нужно будет использовать какую-то распределенную хеш-таблицу. или механизм кэширования.
По возможности старайтесь избегать таких вещей, как удаленное взаимодействие, потому что вызовы удаленного объекта могут стать дорогостоящими и начать сильно снижать производительность. Если вы используете удаленное взаимодействие .net, внимательно изучите интерфейс удаленного объекта. Вы должны передавать крупнозернистые данные через границу процесса, поэтому избегайте болтливых интерфейсов с большим количеством вызовов с небольшими битами данных.
Каковы требования класса, который вы хотите использовать как синглтон? Там может быть совершенно другой взгляд на это. В настоящее время считается, что синглтоны нежелательны, потому что их трудно надежно тестировать, поэтому можно было бы избежать концепции синглтона.
с помощью удаленного взаимодействия .Net (см. ответы выше или по этому URL-адресу: http://msdn.microsoft.com/en-us/library/kwdt6w2k%28VS.71%29.aspx)