C#にSystem.Threading.Tasks.Parallel.For(...)
は、ループと同じようfor
に順序なしで実行するが、複数のスレッドで実行されるaがあります。事は、それはでしか動作しないということです、long
そしてint
、私はで働きたいですulong
。さて、型キャストはできますが、境界線に問題があります。
long.MaxValue-10
たとえば、からへのループが必要だとしますlong.MaxValue+10
(覚えておいてください、私はについて話しているulong
)。それ、どうやったら出来るの?
例:
for (long i = long.MaxValue - 10; i < long.MaxValue; ++i)
{
Console.WriteLine(i);
}
//does the same as
System.Threading.Tasks.Parallel.For(long.MaxValue - 10, long.MaxValue, delegate(long i)
{
Console.WriteLine(i);
});
//except for the order, but theres no equivalent for
long max = long.MaxValue;
for (ulong i = (ulong)max - 10; i < (ulong)max + 10; ++i)
{
Console.WriteLine(i);
}