Free cookie consent management tool by TermsFeed Policy Generator

source: trunk/sources/HeuristicLab.Hive.Client.Core/Heartbeat.cs @ 734

Last change on this file since 734 was 734, checked in by kgrading, 15 years ago

implemented a threadsafe MessageQueue (#347)

File size: 984 bytes
Line 
1using System;
2using System.Collections.Generic;
3using System.Linq;
4using System.Text;
5using System.Timers;
6using HeuristicLab.Hive.Client.Common;
7
8namespace HeuristicLab.Hive.Client.Core {
9  public class Heartbeat {
10    public double Interval { get; set; }
11   
12    private Timer heartbeatTimer = null;
13       
14    public Heartbeat() {
15      Interval = 100;
16    }
17
18    public Heartbeat(double interval) {
19      Interval = interval;     
20    }
21
22    public void StartHeartbeat() {
23      heartbeatTimer = new System.Timers.Timer();
24      heartbeatTimer.Interval = this.Interval;
25      heartbeatTimer.AutoReset = true;
26      heartbeatTimer.Elapsed += new ElapsedEventHandler(heartbeatTimer_Elapsed);
27      heartbeatTimer.Start();               
28    }
29
30    void heartbeatTimer_Elapsed(object sender, ElapsedEventArgs e) {
31      Console.WriteLine("tick");
32      MessageQueue.GetInstance().AddMessage(MessageQueue.MessageType.FetchJob);
33    }
34
35  }
36}
Note: See TracBrowser for help on using the repository browser.