2009-12-09 3 views
0

В настоящее время я использую WF с несколькими хостами. Если один из этих хостов владеет рабочим процессом, но сбой, я хотел бы, чтобы другой хост смог завершить рабочий процесс. Есть какой-либо способ сделать это?Завершить незаработанный рабочий процесс

Что я пробовал до сих пор, это сначала удалить право собственности, выполнив sql-запрос, чтобы установить ownerID и ownUntil в NULL, разблокирован до 1 и nextTimer до текущей даты. Затем я получаю экземпляр рабочего процесса из среды выполнения и завершаю вызов. Кажется, что это работает только тогда, когда хост, который запускает рабочий процесс, тот, который его завершает.

+0

Я забыл упомянуть, что когда я пытаюсь выполнить текущее решение против рабочего процесса, запущенного другим хостом, он успешно удаляет информацию отслеживания, но не состояние экземпляра. – Dan

+0

@ Dan: если вы что-то забыли, используйте параметр редактирования в вопросе и внесите изменения в сам вопрос. Содержание на SO не является неизменным. – AnthonyWJones

+0

@ AnthonyWJones: Спасибо. Я видел это после добавления комментария. – Dan

ответ

0

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

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