public DelayedCallbackProvider(ITimedCallbackProvider callbackProvider, TimeSpan accuracy) { this.callbackProvider = callbackProvider; this.accuracy = accuracy; delayedActions = new Dictionary <object, DelayedRunnable>(); syncObj = new object(); }
public DelayedCallbackProvider CreateDelayedCallbackProvider(TimeSpan accuracy) { if (CommonCallbackImplType == null) { throw new Exception("Call SetCommonCallbackImplementationClass() before calling this method"); } ITimedCallbackProvider provider = (ITimedCallbackProvider)Activator.CreateInstance(CommonCallbackImplType); return(new DelayedCallbackProvider(provider, accuracy)); }