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

  • Glyn Dewis

    Glyn Dewis

    25 AĞUSTOS 2007
  • Paul Schroder

    Paul Schrode

    30 Kasım 2007
  • spyib

    spyib

    9 Ocak 2007