SORU
24 EYLÜL 2012, PAZARTESİ


Paralel Ara.dosyalarda grup?

Nasıl parallel.for bir döngü patlak mı?

Aşağıdaki gibi görünen oldukça karmaşık bir deyim var:

Parallel.ForEach<ColorIndexHolder>(ColorIndex.AsEnumerable(),
    new Action<ColorIndexHolder>((ColorIndexHolder Element) =>
    {
        if (Element.StartIndex <= I && Element.StartIndex   Element.Length >= I)
        {
            Found = true;
            break;
        }
    }));

Paralel sınıf kullanarak, bu süreci bugüne kadar optimize edebilirim. Ancak; paralel döngüsünü kırmak için nasıl anlamaya olamaz? break; deyimi aşağıdaki sözdizimi hatası atar:

Hayır çevreleyen hangi Ara ya da devam etmek için döngüler

CEVAP
24 EYLÜL 2012, PAZARTESİ


ParallelLoopState.Break yöntemi kullanın:

 Parallel.ForEach(list,
    (i, state) =>
    {
       state.Break();
    });

Ya da senin durumunda:

Parallel.ForEach<ColorIndexHolder>(ColorIndex.AsEnumerable(),
    new Action<ColorIndexHolder, ParallelLoopState>((ColorIndexHolder Element, ParallelLoopState state) =>
    {
        if (Element.StartIndex <= I && Element.StartIndex   Element.Length >= I)
        {
            Found = true;
            state.Break();
        }
    }));

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

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • William Hyde

    William Hyde

    23 HAZİRAN 2008
  • wwjoshdo

    wwjoshdo

    25 Mayıs 2009
  • wwjoshdu

    wwjoshdu

    18 ŞUBAT 2011