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

  • Blue Lightning TV

    Blue Lightni

    9 EKİM 2011
  • oHeymarvin

    oHeymarvin

    11 Temmuz 2013
  • Tome Rodrigo

    Tome Rodrigo

    9 Temmuz 2006