c# - Limited concurrency TaskScheduler that can interleave tasks to be explicitly ordered -


I'm looking for a TaskScheduler :

  1. Permissions Let me define some dedicated threads (like 8) - a standard limitedConcurrencyLevelTaskScheduler (uses Threadpool threads) or WorkStealingTaskScheduler to do this.
  2. Create a sub-task scheduler, which has been completely ordered but determines the tasks on dedicated threads of the parents scheduler.

At this time we use TaskScheduler.Default for general (at the mercy of Threadpool Development algorithm etc) and New Ordered Task Scheduler ( ) I want to keep this behavior whenever we want to work but limit both requirements for our pool of dedicated threads.

QueuedTaskScheduler is getting pretty close, I thought is the QueuedTaskScheduler.ActivateNewQueue () method, which gives a child to the pool of TaskScheduler workers Will execute the work from the guardian, but this does not seem like that. Children who work in the form of parents consider similar equality.

I would not necessarily want to be given the priority of the works of children in the field of work (although this may be a good feature in the future).

I have seen a related question here: But my requirements do not need to handle ASSync functions (all my encrypted functions completely synchronously, completely synchronous, no continuity).

I take "completely ordered" and you also mean "one at a time ".

  Task Scheduler _paint = New Concurrent Exclusive SchedulerPiere (Task Scheduler. Default, 8). Konqueror Scheduler;  

and "child" scheduler will be a special scheduler which uses the concurrent scheduler below:

Preconditioner = new ConcurrentExclusiveSchedulerPair (_parent) .ExclusiveScheduler;

Comments

Popular posts from this blog

HTML/CSS - Automatically set height width from background image? -

php - Mysql Show Process - Sleep Commands and what to do -

c - What is the address of buf (the local variable in the main function)? -