-
Notifications
You must be signed in to change notification settings - Fork 1
Home
grammophone edited this page Mar 26, 2016
·
5 revisions
This library emulates a subset of PLINQ for long-running tasks. The reason for introducing such a library is that PLINQ relies on the standard TaskScheduler
which in turn uses the .NET thread pool. Long running tasks with default settings have the tendency to starve the thread pool. The library creates the worker tasks with TaskCreationOptions.LongRunning
to overcome the problem.
In order to use the library, open the Gramma.Parallel
namespace, invoke the AsLongParallel
extension method to any IEnumerable<T>
. Currently only Where
and Select
are natively supported. The other LINQ methods are available through the default .NET implementations.