Beispiel #1
0
 public Task RaiseHandler(AsyncEventHandler handler)
 {
     if (handler is AsyncEventActionHandler h)
     {
         return(h.Raise());
     }
     else if (handler is AsyncEventTaskHandler t)
     {
         return(t.Raise());
     }
     else
     {
         return(Task.CompletedTask);
     }
 }
Beispiel #2
0
 Task RaiseHandler(AsyncEventHandler handler, TArg arg)
 {
     if (handler is AsyncEventActionHandler h)
     {
         return(h.Raise());
     }
     else if (handler is AsyncEventTaskHandler t)
     {
         return(t.Raise());
     }
     else if (handler is AsyncEventActionHandler <TArg> ha)
     {
         return(ha.Raise(arg));
     }
     else if (handler is AsyncEventTaskHandler <TArg> aa)
     {
         return(aa.Raise(arg));
     }
     else
     {
         return(Task.CompletedTask);
     }
 }
Beispiel #3
0
 internal void RemoveHandler <TActionFunction>(AsyncEventHandler handler)
 {
     lock (Handlers) Handlers.Remove(handler);
 }