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

  • Besnik Ibrahimi

    Besnik Ibrah

    27 Mart 2010
  • MrDevin521

    MrDevin521

    18 Temmuz 2010
  • SlimaksClass

    SlimaksClass

    15 Kasım 2010