void PostOnTaskCompletion(CompletionPort completionPort, IteratorHandler handler)
 {
     SpawnIterator <CompletionPort, IteratorHandler>(completionPort, handler, PostOnTaskCompletionHelper);
 }
Exemplo n.º 2
0
 public static void SpawnIterator <T0, T1, T2>(this DispatcherQueue TaskQueue, T0 t0, T1 t1, T2 t2, IteratorHandler <T0, T1, T2> handler)
 {
     TaskQueue.Enqueue(new IterativeTask <T0, T1, T2>(t0, t1, t2, handler));
 }
        IEnumerator <ITask> PostOnTaskCompletionHelper(CompletionPort completionPort, IteratorHandler handler)
        {
            yield return(new IterativeTask(handler));

            completionPort.Post(true);
        }
Exemplo n.º 4
0
 public static void SpawnIterator(this DispatcherQueue TaskQueue, IteratorHandler handler)
 {
     TaskQueue.Enqueue(new IterativeTask(handler));
 }
Exemplo n.º 5
0
 public static void SpawnIterator <T0>(this DispatcherQueue TaskQueue, T0 t0, IteratorHandler <T0> handler)
 {
     TaskQueue.Enqueue(new IterativeTask <T0>(t0, handler));
 }
Exemplo n.º 6
0
 public static Receiver <T> ReceiveWithIteratorFromPortSet <T>(bool persist, IPortSet portSet, IteratorHandler <T> handler)
 {
     return(new Receiver <T>(persist, (IPortReceive)portSet[typeof(T)], null, new IterativeTask <T>(handler)));
 }
Exemplo n.º 7
0
 public IterativeTask(IteratorHandler handler)
 {
     if (handler == null)
         throw new ArgumentNullException ("handler");
     this.handler = handler;
 }
Exemplo n.º 8
0
 public static ITask FromIteratorHandler(IteratorHandler handler)
 {
     return(new IterativeTask(handler));
 }
Exemplo n.º 9
0
 public static Receiver <T> ReceiveWithIterator <T>(bool persist, Port <T> port, IteratorHandler <T> handler)
 {
     return(new Receiver <T>(persist, port, null, new IterativeTask <T>(handler)));
 }
Exemplo n.º 10
0
 public static JoinReceiver JoinedReceiveWithIterator <T0, T1>(bool persist, Port <T0> port0, Port <T1> port1, IteratorHandler <T0, T1> handler)
 {
     return(new JoinReceiver(persist, new IterativeTask <T0, T1>(handler), new IPortReceive[]
     {
         port0,
         port1
     }));
 }
Exemplo n.º 11
0
 public IterativeTask(IteratorHandler handler)
 {
     _Handler          = handler;
     _causalityContext = Dispatcher.CloneCausalitiesFromCurrentThread();
 }
Exemplo n.º 12
0
 protected void SpawnIterator <T0, T1, T2>(T0 t0, T1 t1, T2 t2, IteratorHandler <T0, T1, T2> handler)
 {
     TaskQueue.Enqueue(new IterativeTask <T0, T1, T2>(t0, t1, t2, handler));
 }
Exemplo n.º 13
0
 protected void SpawnIterator <T0>(T0 t0, IteratorHandler <T0> handler)
 {
     TaskQueue.Enqueue(new IterativeTask <T0>(t0, handler));
 }
Exemplo n.º 14
0
 protected void SpawnIterator(IteratorHandler handler)
 {
     TaskQueue.Enqueue(new IterativeTask(handler));
 }