this.connectionLimit = connectionLimit;
this.maxIdleTime = maxIdleTime;
this.currentConnections = 0;
- this.idleSince = DateTime.Now;
+ this.idleSince = DateTime.UtcNow;
}
// Properties
public DateTime IdleSince {
get {
- return idleSince;
+ return idleSince.ToLocalTime ();
}
internal set {
lock (locker)
- idleSince = value;
+ idleSince = value.ToUniversalTime ();
}
}
get {
return CurrentConnections == 0
&& maxIdleTime != Timeout.Infinite
- && DateTime.Now >= IdleSince.AddMilliseconds (maxIdleTime);
+ && DateTime.UtcNow >= IdleSince.AddMilliseconds (maxIdleTime);
}
}
{
lock (locker) {
currentConnections++;
- idleSince = DateTime.Now.AddMilliseconds (1000000);
+ idleSince = DateTime.UtcNow.AddMilliseconds (1000000);
}
}
lock (locker) {
currentConnections--;
if (currentConnections == 0)
- idleSince = DateTime.Now;
+ idleSince = DateTime.UtcNow;
}
}