Initial commit
v1.0
This commit is contained in:
53
HSUCO_CCTV_Monitoring/Worker.cs
Normal file
53
HSUCO_CCTV_Monitoring/Worker.cs
Normal file
@@ -0,0 +1,53 @@
|
||||
using System.Threading;
|
||||
|
||||
namespace HSUCO_Server_Monitoring
|
||||
{
|
||||
public class Worker
|
||||
{
|
||||
public delegate void MessageHandler(MessageSender sender, int from, StatusResult result);
|
||||
|
||||
public event MessageHandler UpdateMessage;
|
||||
|
||||
private bool loop = true;
|
||||
private Config _config;
|
||||
public Worker(Config config)
|
||||
{
|
||||
_config = config;
|
||||
|
||||
}
|
||||
public void Start_NVR()
|
||||
{
|
||||
StatusChecker statusChecker = new StatusChecker();
|
||||
while (loop)
|
||||
{
|
||||
for (int i = 0; i < _config.NVR.Count; i++)
|
||||
{
|
||||
StatusResult result = statusChecker.Check(_config.NVR[i].IpAddress);
|
||||
UpdateMessage(MessageSender.NVR, i,result);
|
||||
}
|
||||
Thread.Sleep(_config.NVR_DelayTime);
|
||||
}
|
||||
}
|
||||
public void Start_CCTV()
|
||||
{
|
||||
int workerCount = _config.CCTV.Count / 50;
|
||||
|
||||
StatusChecker statusChecker = new StatusChecker();
|
||||
while (loop)
|
||||
{
|
||||
for (int i = 0; i < _config.CCTV.Count; i++)
|
||||
{
|
||||
StatusResult result = statusChecker.Check(_config.CCTV[i].IpAddress);
|
||||
UpdateMessage(MessageSender.CCTV, i, result);
|
||||
}
|
||||
Thread.Sleep(_config.CCTV_DelayTime);
|
||||
}
|
||||
}
|
||||
public void End()
|
||||
{
|
||||
loop = false;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
}
|
Reference in New Issue
Block a user