SORU
24 Ocak 2011, PAZARTESİ


Nasıl iptal/VUK Görevler iptal edebilirim?

Bir iş parçacığı, System.Threading.Task bazı oluşturmak ve her görev başlar.

İplik öldürmek .Abort() ben ne zaman, görevleri iptal değil.

Nasıl benim görevler için .Abort() iletebilir miyim ?

CEVAP
24 Ocak 2011, PAZARTESİ


Edemezsin. Görevleri iş parçacığı havuzu iş parçacığı arka plan kullanın. Ayrıca iş parçacığı İptal yöntemini kullanarak iptal etmek tavsiye edilir. İptal görevlerin uygun bir şekilde açıklıyor following blog post bir göz iptal belirtecini kullanarak alabilirsiniz. İşte size bir örnek:

class Program
{
    static void Main()
    {
        var ts = new CancellationTokenSource();
        CancellationToken ct = ts.Token;
        Task.Factory.StartNew(() =>
        {
            while (true)
            {
                // do some heavy work here
                Thread.Sleep(100);
                if (ct.IsCancellationRequested)
                {
                    // another thread decided to cancel
                    Console.WriteLine("task canceled");
                    break;
                }
            }
        }, ct);

        // Simulate waiting 3s for the task to complete
        Thread.Sleep(3000);

        // Can't wait anymore => cancel this task 
        ts.Cancel();
        Console.ReadLine();
    }
}

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

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • jonathepianist

    jonathepiani

    31 Temmuz 2008
  • lifeisforsharingDT

    lifeisforsha

    18 Mayıs 2011
  • tunez4you

    tunez4you

    20 EKİM 2008