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

  • ethr95awd

    ethr95awd

    8 Kasım 2006
  • Marina and The Diamonds

    Marina and T

    8 Temmuz 2008
  • Tom Megalis

    Tom Megalis

    18 NİSAN 2006