SORU
2 Aralık 2010, PERŞEMBE


Nasıl UI iş parçacığı üzerinde bir Görev devam edeceğim?

Orada bir 'standart' görev devamı olan ilk görev oluşturulduğu iş parçacığı üzerinde çalışması gerektiğini belirtmek için bir yol?

Şu anda aşağıdaki kod var - çalışıyor ama memuru takip ve ikinci bir Eylem oluşturma gereksiz bir yük gibi görünüyor.

dispatcher = Dispatcher.CurrentDispatcher;
Task task = Task.Factory.StartNew(() =>
{
    DoLongRunningWork();
});

Task UITask= task.ContinueWith(() =>
{
    dispatcher.Invoke(new Action(() =>
    {
        this.TextBlock1.Text = "Complete"; 
    }
});

CEVAP
2 Aralık 2010, PERŞEMBE


TaskScheduler.FromCurrentSynchronizationContext(): devamı arayın

    Task UITask= task.ContinueWith(() =>
    {
     this.TextBlock1.Text = "Complete"; 
    }, TaskScheduler.FromCurrentSynchronizationContext());

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • Bennythecoder

    Bennythecode

    25 Mart 2008
  • Easy Learn Tutorial

    Easy Learn T

    10 Kasım 2012
  • spyib

    spyib

    9 Ocak 2007