2016-01-25 5 views
0

Можно ли как-то уведомить текущий процесс извне?C# сообщить о запущенном процессе

У меня есть программа на C#, которая теоретически работает навсегда. И я хотел бы уведомить об этом, чтобы вызвать некоторые действия вручную. Было бы лучше, если это решение возможно для Windows и Linux (моно).

EDIT:

  1. Решение должно работать без пользовательского интерфейса
  2. Моя программа, как и сейчас, часть веб-службы. На инициализации, новый Theread создан, который использует Task класса, чтобы остаться в живых
+0

Дополнительная информация о технической информации, пожалуйста, – darkomen

+1

Пользователь может нажать кнопку, другой процесс может владеть именем mutex (windows), полученной сетевой командой ... Можете ли вы быть более конкретным, не стесняйтесь, расскажите нам, что точно вы хотите сделать. – Sinatr

+0

«Программа», консольное приложение? служба windows? windows forms? ... –

ответ

5

Возьмите навсегда запущенный-процесс, и пусть это обеспечить WebService могут вызывать другие процессы.

Для достижения этой цели через HTTP-вызовы вы можете использовать любую инфраструктуру web-сервисов cross-plattform, например WebApi или ServiceStack. Это будет работать даже через Интернет (если машины могут достичь друг друга).

Существует множество подходов. Например, вы также можете использовать named pipes или поместить команды в базу данных (другой процесс должен запрашивать регулярно) или - если вы достаточно бесстрашны - пишите/читайте файлы для связи. Будьте изобретательны ...

+0

Итак, я только что редактировал свой пост. Я думаю, что это может сбивать с толку, когда есть URL-адреса, которые могут быть доступны снаружи, а другие должны работать только внутри. – Leifb

+2

Почему? В зависимости от триггеров, которые вы хотите реализовать (я предполагаю, что новые будут теми, кого вы назвали «внутренне»), вы можете сделать один базовый URL для своих внутренних вызовов, таких как «/ maintenance/triggers /», и называть их «/ maintenance/triggers/1/start "или что-то в этом роде. – Waescher

+0

Звучит довольно неплохо. И названные каналы также полезны, когда я могу рассмотреть возможность разделения веб-службы и моей «программы». Благодаря! – Leifb

Смежные вопросы