當前位置: 首頁>>代碼示例>>C#>>正文


C# ParallelLoopState.LowestBreakIteration屬性代碼示例

本文整理匯總了C#中System.Threading.Tasks.ParallelLoopState.LowestBreakIteration屬性的典型用法代碼示例。如果您正苦於以下問題:C# ParallelLoopState.LowestBreakIteration屬性的具體用法?C# ParallelLoopState.LowestBreakIteration怎麽用?C# ParallelLoopState.LowestBreakIteration使用的例子?那麽, 這裏精選的屬性代碼示例或許可以為您提供幫助。您也可以進一步了解該屬性所在System.Threading.Tasks.ParallelLoopState的用法示例。


在下文中一共展示了ParallelLoopState.LowestBreakIteration屬性的1個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的C#代碼示例。

示例1: Main

//引入命名空間
using System;
using System.Threading;
using System.Threading.Tasks;

public class Example
{
   public static void Main()
   {
      var rnd = new Random();
      int breakIndex = rnd.Next(1, 11);
      Nullable<long> lowest = new Nullable<long>();

      Console.WriteLine("Will call Break at iteration {0}\n",
                        breakIndex);

      var result = Parallel.For(1, 101, (i, state) => {
                                            Console.WriteLine("Beginning iteration {0}", i);
                                            int delay;
                                            Monitor.Enter(rnd);
                                               delay = rnd.Next(1, 1001);
                                            Monitor.Exit(rnd);
                                            Thread.Sleep(delay);
                                            
                                            if (state.ShouldExitCurrentIteration) {
                                               if (state.LowestBreakIteration < i)
                                                  return;
                                            }

                                            if (i == breakIndex) {
                                               Console.WriteLine("Break in iteration {0}", i);
                                               state.Break();
                                               if (state.LowestBreakIteration.HasValue)
                                                  if (lowest < state.LowestBreakIteration)
                                                     lowest = state.LowestBreakIteration;
                                                  else
                                                     lowest = state.LowestBreakIteration;
                                            }

                                            Console.WriteLine("Completed iteration {0}", i);
                                       });
         if (lowest.HasValue)
            Console.WriteLine("\nLowest Break Iteration: {0}", lowest);
         else
            Console.WriteLine("\nNo lowest break iteration.");
   }
}
開發者ID:.NET開發者,項目名稱:System.Threading.Tasks,代碼行數:47,代碼來源:ParallelLoopState.LowestBreakIteration

輸出:

Will call Break at iteration 8

Beginning iteration 1
Beginning iteration 13
Beginning iteration 97
Beginning iteration 25
Beginning iteration 49
Beginning iteration 37
Beginning iteration 85
Beginning iteration 73
Beginning iteration 61
Completed iteration 85
Beginning iteration 86
Completed iteration 61
Beginning iteration 62
Completed iteration 86
Beginning iteration 87
Completed iteration 37
Beginning iteration 38
Completed iteration 38
Beginning iteration 39
Completed iteration 25
Beginning iteration 26
Completed iteration 26
Beginning iteration 27
Completed iteration 73
Beginning iteration 74
Completed iteration 62
Beginning iteration 63
Completed iteration 39
Beginning iteration 40
Completed iteration 40
Beginning iteration 41
Completed iteration 13
Beginning iteration 14
Completed iteration 1
Beginning iteration 2
Completed iteration 97
Beginning iteration 98
Completed iteration 49
Beginning iteration 50
Completed iteration 87
Completed iteration 27
Beginning iteration 28
Completed iteration 50
Beginning iteration 51
Beginning iteration 88
Completed iteration 14
Beginning iteration 15
Completed iteration 15
Completed iteration 2
Beginning iteration 3
Beginning iteration 16
Completed iteration 63
Beginning iteration 64
Completed iteration 74
Beginning iteration 75
Completed iteration 41
Beginning iteration 42
Completed iteration 28
Beginning iteration 29
Completed iteration 29
Beginning iteration 30
Completed iteration 98
Beginning iteration 99
Completed iteration 64
Beginning iteration 65
Completed iteration 42
Beginning iteration 43
Completed iteration 88
Beginning iteration 89
Completed iteration 51
Beginning iteration 52
Completed iteration 16
Beginning iteration 17
Completed iteration 43
Beginning iteration 44
Completed iteration 44
Beginning iteration 45
Completed iteration 99
Beginning iteration 4
Completed iteration 3
Beginning iteration 8
Completed iteration 4
Beginning iteration 5
Completed iteration 52
Beginning iteration 53
Completed iteration 75
Beginning iteration 76
Completed iteration 76
Beginning iteration 77
Completed iteration 65
Beginning iteration 66
Completed iteration 5
Beginning iteration 6
Completed iteration 89
Beginning iteration 90
Completed iteration 30
Beginning iteration 31
Break in iteration 8
Completed iteration 8
Completed iteration 6
Beginning iteration 7
Completed iteration 7

Lowest Break Iteration: 8


注:本文中的System.Threading.Tasks.ParallelLoopState.LowestBreakIteration屬性示例由純淨天空整理自Github/MSDocs等開源代碼及文檔管理平台,相關代碼片段篩選自各路編程大神貢獻的開源項目,源碼版權歸原作者所有,傳播和使用請參考對應項目的License;未經允許,請勿轉載。