我遇到过 .NET 4 ThreadLocal<T>,想知道是否有办法.Value从所有线程中累积值。
在他们拥有的 Microsoft 的 ppl C++ 库中Concurrency::combinable::combine_each,是否有 .NET 的等效方法ThreadLocal?
ThreadLocal<long> ticks = new ThreadLocal<long>();
void AddTicks(StopWatch sw)
{
ticks.Value += sw.ElapsedTicks;
}
void ReportTimes()
{
long totalTicks = /* How do I accumulate all the different values? */;
Console.WriteLine(TimeSpan.FromTicks(totalTicks));
}