using System;
using System.Collections.Generic;
using System.Text;
using System.Linq;
using System.Threading;
using System.Threading.Tasks;
// c# - parallel - 中断
namespace ConsoleApp25
{
class ParallelBreak
{
static int forNum = 5;
static void Main(string[] args)
{
Console.WriteLine("Hello World!");
ParalleFor();
}
static void Log(string prefix) => Console.WriteLine($"{prefix} task:{Task.CurrentId} Thread:{Thread.CurrentThread.ManagedThreadId}");
static void ParalleFor()
{
ParallelLoopResult result = Parallel.For(0, forNum, (int i,ParallelLoopState pls) =>
{
Log($"s: {i} ");
if (i > 2) {
pls.Break();
Log($"break now {i}");
}
Task.Delay(10).Wait();
Log($"e: {i} ");
});
Console.WriteLine($"is completed:{result.IsCompleted}");
}
}
}
c# - parallel - 中断
最新推荐文章于 2023-12-24 10:47:42 发布