自上次访问 属性 以来经过的时间
Time elapsed since a property was last accessed
我有一个 属性 获取和设置一个整数列表,我用它来使用 LiveCharts 绘制图表。
正在从外部硬件设备传递这些值。有时由于硬件问题,值可能不可用,在此期间没有值被传递到我的应用程序,因此 属性 没有被触发。我仍然想绘制这些值,但是 NaN
.
如何检测 属性 是否在我的代码中 accessed/set,比如说 10 毫秒?
您可以将 DateTime.Now 分配给 属性 的 setter 中的另一个实例变量。然后在 getter 中,如果该值超过 10 毫秒,则可以 return NaN。如下所示。
DateTime _lastUpdate;
double _value;
TimeSpan _maxInterval = new TimeSpan(0, 0, 0, 0, 10);
public double Value
{
get
{
return (DateTime.Now - _lastUpdate) <= _maxInterval ? _value : double.NaN;
}
set
{
_lastUpdate = DateTime.Now;
_value = value;
}
}
好的,我要找的是 Timer。 ElapsedEventHandler 满足了我一直在寻找的目的。
我有一个 属性 获取和设置一个整数列表,我用它来使用 LiveCharts 绘制图表。
正在从外部硬件设备传递这些值。有时由于硬件问题,值可能不可用,在此期间没有值被传递到我的应用程序,因此 属性 没有被触发。我仍然想绘制这些值,但是 NaN
.
如何检测 属性 是否在我的代码中 accessed/set,比如说 10 毫秒?
您可以将 DateTime.Now 分配给 属性 的 setter 中的另一个实例变量。然后在 getter 中,如果该值超过 10 毫秒,则可以 return NaN。如下所示。
DateTime _lastUpdate;
double _value;
TimeSpan _maxInterval = new TimeSpan(0, 0, 0, 0, 10);
public double Value
{
get
{
return (DateTime.Now - _lastUpdate) <= _maxInterval ? _value : double.NaN;
}
set
{
_lastUpdate = DateTime.Now;
_value = value;
}
}
好的,我要找的是 Timer。 ElapsedEventHandler 满足了我一直在寻找的目的。