разделить значение int между двумя или более процессами, используя C #? - PullRequest
2 голосов
/ 10 марта 2011

Я хотел бы разделить счетчик int между двумя процессами, и на основе некоторого логического значения int будет увеличено значение.

Кто-нибудь может мне предложить способ сделать это с помощью .Net 3.5 framework?

Спасибо Кришна

Ответы [ 4 ]

3 голосов
/ 10 марта 2011

Если вам нужно только увеличить счетчик из разных потоков, взгляните на метод Interlocked.Increment

2 голосов
/ 10 марта 2011

Использование Отображенные в память файлы или System.IO.Pipes, см. Ниже.

Файлы с отображением в памяти представлены в .Net Framework 4.0.В противном случае вы можете использовать именованные каналы.

2 голосов
/ 10 марта 2011

Для связи между процессами вы можете использовать WCF (Windows Communication Foundation) с именованным связыванием трубы.

По ссылке выше:

Именованный канал - это объект в ядре операционной системы Windows, например раздел общей памяти, который процессы могут использовать для связи. Именованный канал имеет имя и может использоваться для односторонней или дуплексной связи между процессами на одном компьютере.

Если требуется обмен данными между различными приложениями WCF на одном компьютере, и вы хотите запретить обмен данными с другим компьютером, используйте транспорт именованных каналов. Дополнительным ограничением является то, что процессы, запущенные из удаленного рабочего стола Windows, могут быть ограничены одним и тем же сеансом удаленного рабочего стола Windows, если у них нет повышенных прав.

0 голосов
/ 10 марта 2011

Посмотрите на межпроцессный обмен данными. Вот хорошая статья об этом.

...