| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061 |
- using com.hnshituo.core.webapp.vo;
- using System;
- using System.Collections.Generic;
- using System.IO;
- using System.Linq;
- using System.Net.NetworkInformation;
- using System.Text;
- using System.Threading;
- using System.Threading.Tasks;
- namespace RailLocalMeter
- {
- public class PingNetwork
- {
- Log lg = Log.GetInstance();
- private bool blThreadFlag = true;
- Thread DataCollectThread = null;//采集进程
- string dbFile = Path.Combine(AppConfigCache.path, "data/rfidDb.data");
-
- public PingNetwork()
- {
- DataCollectThread = new Thread(new ThreadStart(DataCollect));
- }
- public void start()
- {
- DataCollectThread.Start();
- }
- public void stop()
- {
- blThreadFlag = false;
- }
- private void DataCollect()
- {
- if (!blThreadFlag) return;
- while (blThreadFlag)
- {
- try
- {
- Ping pingSend = new Ping();
- PingReply reply = pingSend.Send(AppConfigCache.ServiceIp, 1000);
- if (reply.Status == IPStatus.Success)
- CacleCls.serverFlag = true;
- else
- CacleCls.serverFlag = false;
- }
- catch (Exception)
- {
- CacleCls.serverFlag = false;
- }
- finally
- {
- Thread.Sleep(1000); //1秒ping一次网络
- }
- }
- }
- }
- }
|