public virtual PreemptiveRequest Request(int priority = 1, bool preempt = false) { var request = new PreemptiveRequest(Environment, TriggerRelease, DisposeCallback, priority, preempt); if (!RequestQueue.ContainsKey(request.Priority)) { RequestQueue.Add(request.Priority, new LinkedList <PreemptiveRequest>()); } RequestQueue[request.Priority].AddLast(request); TriggerRequest(); return(request); }
public virtual PriorityRequest Request(int priority = 1) { var request = new PriorityRequest(Environment, TriggerRelease, DisposeCallback, priority); if (!RequestQueue.ContainsKey(priority)) { RequestQueue.Add(priority, new LinkedList <PriorityRequest>()); } RequestQueue[priority].AddLast(request); TriggerRequest(); return(request); }