/// <summary>
        /// Adds a job to the timer to operate asyncronously.
        /// </summary>
        /// <param name="Schedule">The schedule that this delegate is to be run on.</param>
        /// <param name="f">The delegate to run</param>
        /// <param name="Params">The method parameters to pass if you leave any DateTime parameters unbound, then they will be set with the scheduled run time of the
        /// method.  Any unbound object parameters will get this Job object passed in.</param>
        public void AddAsyncJob(IScheduledItem Schedule, Delegate f, params object[] Params)
        {
            TimerJob Event = new TimerJob(Schedule, new DelegateMethodCall(f, Params));

            Event.SyncronizedEvent = false;
            _Jobs.Add(Event);
        }
        private void OnError(DateTime eventTime, TimerJob job, Exception e)
        {
            if (Error == null)
            {
                return;
            }

            try { Error(this, new ExceptionEventArgs(eventTime, e)); }
            catch (Exception) {}
        }
示例#3
0
        public void AddAsyncReportEvent(IScheduledItem Schedule, int reportNo)
        {
            if (Elapsed == null)
            {
                throw new Exception("You must set elapsed before adding Events");
            }
            TimerJob Event = new TimerJob(Schedule, new DelegateMethodCall(Handler, Elapsed, reportNo));

            Event.SyncronizedEvent = false;
            AddJob(Event);
        }
示例#4
0
 public void Add(TimerJob Event)
 {
     _List.Add(Event);
 }
 /// <summary>
 /// Adds a job to the timer.
 /// </summary>
 /// <param name="Event"></param>
 public void AddJob(TimerJob Event)
 {
     _Jobs.Add(Event);
 }