Остановка темы в Windows Phone 7 - PullRequest
1 голос
/ 18 ноября 2011

Как я могу остановить / прервать / прервать поток в WP7?

Обновление: Придумано следующее решение (событие очереди является частью Q потребителя / производителя и фактически не требуетсяза выход из темы:)):

protected override void Dispose(bool disposing)
{
    base.Dispose(disposing);
    //GP-HACK:Stoping the thread.
    stopExecutorThread = true;
    operationQueueNonEmptyEvent.Set();
}

private volatile bool stopExecutorThread = false;

public void Run()
{
    do
    {
        operationQueueNonEmptyEvent.WaitOne();

        if (stopExecutorThread) 
            return;

        ....
    }
}

Спасибо Мэтту!

Большое спасибо!

1 Ответ

2 голосов
/ 18 ноября 2011

Нет способа остановить определенный поток.Если вам действительно нужно остановить что-либо runnign в потоке, вам нужно связаться с кодом, выполняющимся в потоке, и сказать ему, чтобы он прекратил делать то, что он делает.Нет встроенного способа сделать это.

В качестве альтернативы рассмотрим BackgroundWorker , поскольку это поддерживает запрос отмены.

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