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

apache - 504 Gateway Time-out The server didn't respond in time. How to fix it? -

c# - .net WebSocket: CloseOutputAsync vs CloseAsync -

c++ - How to properly scale qgroupbox title with stylesheet for high resolution display? -