Управление потоками в оконном сервисе с использованием приложения thrid - PullRequest
0 голосов
/ 02 апреля 2012

Я написал оконную службу, которая выполняет некоторую задачу с использованием потоков. Теперь я пишу приложение, которое управляет оконной службой с помощью контроллера оконной службы. Есть также несколько потоков, которыми я хочу управлять из этого стороннего приложения.попытался запустить / остановить потоки, используя базу данных, но это не кажется правильным решением. Я думаю, что должна быть какая-то вещь, которая бы поддерживала управляющие потоки, такие как контроллер службы окон из третьего приложения.Любая помощь будет принята с благодарностью.Спасибо

Ответы [ 2 ]

1 голос
/ 02 апреля 2012

Вы можете переопределить OnCustomCommand в вашем сервисе, чтобы разрешить связь с вашим сервисным контроллером через ExecuteCommand.

Вы сможете отправлять числа только между 128 и 256, но если вы заключите их в перечисление, это будет вполне работоспособно. Если вам нужно отправить больше данных, вы все равно можете получить их через базу данных после отправки команды.

0 голосов
/ 03 апреля 2012

Что для меня хорошо, так это наличие в моем сервисе супервизорного потока, который опрашивает таблицу базы данных на предмет команд и, в свою очередь, контролирует рабочие потоки.Супервизор также записывает состояние обратно в другую таблицу в базе данных.

Приложение контроллера пользовательского интерфейса опрашивает таблицу состояния и записывает команды в таблицу команд.Когда служба отвечает на команды, она выводит результаты обратно в таблицу состояния, предоставляя пользователю положительный отзыв.

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

Защитите таблицы с транзакциями, и это может долго выполняться без присмотра.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...