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

  • EmperorTigerstar

    EmperorTiger

    14 EYLÜL 2009
  • J Medema

    J Medema

    11 EKİM 2006
  • NPR

    NPR

    22 NİSAN 2006