...
bool _myFlag = true;
while (_myFlag)
{
...
}
...
public void PluginStop()
{
_myFlag = false;
}
public void PluginStop()
{
if (myThread != null
&& (myThread.ThreadState != ThreadState.Stopped
|| myThread.ThreadState != ThreadState.AbortRequested
|| myThread.ThreadState != ThreadState.Aborted
|| myThread.ThreadState != ThreadState.StopRequested)) myThread.Abort();
}
я же написал, если длительные команды, то через Abort. Всё прокатывает, у самого Фермер так работает уже несколько месяцев стабильно и пользуются им очень многие, не жалуютсяне прокатывает такой вариант, если например выполняется в потоке или в скрипте продолжительная команда.
например MoveTo или CollectItems.....
А поток нужно убить.
Я в с# очень недавно разбираюсь, может есть какие то грамотные обработчики исключений ? что бы это все на пользователя не вываливалось