我有一个具有事件处理程序的函数。它正在读取 gps 位置,并且每次读取位置时我将数据放入数据库中,问题是我在一秒钟内有 3 个输入。
例如,如何使某些部分代码每 5 秒执行一次?
我曾尝试做 timer_tick,但我不知道该怎么做,因为这是带有事件处理程序的函数。
这是我的功能:
private void GPS_PositionReceived(string Lat, string Lon)
{
arrLon = Lon.Split(new char[] { '°', '"' }, StringSplitOptions.RemoveEmptyEntries);
dblLon = double.Parse(arrLon[0]) + double.Parse(arrLon[1], new System.Globalization.NumberFormatInfo()) / 60;
deciLon = arrLon[2] == "E" ? dblLon : -dblLon;
arrLat = Lat.Split(new char[] { '°', '"' }, StringSplitOptions.RemoveEmptyEntries);
dblLat = double.Parse(arrLat[0]) + double.Parse(arrLat[1], new System.Globalization.NumberFormatInfo()) / 60;
deciLat = arrLat[2] == "N" ? dblLat : -dblLat;
... //code
}
我希望这部分代码每 5 秒使用一次。
哦,是的,这是事件处理程序:
GPS.PositionReceived += new NmeaInterpreter.PositionReceivedEventHandler(GPS_PositionReceived);