protected void InnerSubscribe(Delegate subscriber, IDelegateInvokeStrategy strategy) { using (var @lock = m_lockScope.Writer(Timeout)) { if ([email protected]) { throw new TimeoutException("Subscribe has timed out"); } m_subscribers.Add(new Pair <Delegate, IDelegateInvokeStrategy>(subscriber, strategy)); } if (g_traceInfo.IsVerboseEnabled) { var subscriberName = GetSubscriberName(subscriber); TraceHelper.TraceVerbose(g_traceInfo, "{0} - Added '{1}' subscription for '{2}'", Name, subscriberName.Second, subscriberName.First); } }
public void Subscribe(Action <T> subscriber, IDelegateInvokeStrategy strategy) { InnerSubscribe(subscriber, strategy); }
public DelegateRef(Delegate @delegate, IDelegateInvokeStrategy strategy) { m_delegate = @delegate; m_strategy = strategy; }