public NotificationsCenterBase(TimeSpan dueTime, TimeSpan interval, int eventsPerInterval)
        {
            _users = new OrderedDictionary();

            _timer = new SynchronizedTimer(OnTimertick, dueTime, interval);

            _eventsPerInterval = eventsPerInterval;

            Start();
        }
        protected virtual void Dispose(bool disposing)
        {
            if (disposing)
            {
                if (null != _timer)
                {
                    Stop();
                    _timer.Dispose();
                    _timer = null;
                }

                if (null != _users)
                {
                    _users.Clear();
                    _users = null;
                }
            }
        }