Forráskód Böngészése

ref: 让 Rider 编辑器更高兴

龙腾猫跃 4 hónapja
szülő
commit
d4c9adc7ca
1 módosított fájl, 3 hozzáadás és 1 törlés
  1. 3 1
      Shared/Utils/TaskUtils.cs

+ 3 - 1
Shared/Utils/TaskUtils.cs

@@ -23,7 +23,7 @@ public static class TaskUtils {
         };
         using var program = new Process { StartInfo = info, EnableRaisingEvents = true };
         if (!program.Start()) throw new InvalidOperationException($"运行程序时出现意外错误:{file} {arguments}");
-        bool hasTimeout = timeoutMs.HasValue && timeoutMs > 0;
+        bool hasTimeout = timeoutMs is > 0;
         Logger.Info($"运行程序,并返回其输出:{file} {arguments}{(hasTimeout ? $",最长可等待 {timeoutMs}ms" : "")}");
 
         // 输出和错误流
@@ -49,6 +49,8 @@ public static class TaskUtils {
         return (await outputTask + await errorTask, program.ExitCode);
     }
 
+    public static void ForEach<T>(this IEnumerable<T> source, Action<T> body)
+        => Parallel.ForEach(source, body);
     public static async Task ForEachAsync<T>(IEnumerable<T> source, int maxDegreeOfParallelism, Func<T, CancellationToken, Task> body, CancellationToken cancellationToken = default) {
         using var linkedCancellationTokenSource = CancellationTokenSource.CreateLinkedTokenSource(cancellationToken);
         var token = linkedCancellationTokenSource.Token;