예제 #1
0
        /// <summary>
        /// 重置时钟
        /// </summary>
        public void ResetTimer()
        {
            SessionTimer timer;

            if (SessionTimer.Timers.TryGetValue(Context.ConnectionId, out timer))
            {
                timer.ResetTimer();
            }
            else
            {
                SessionTimer.StartTimer(Context.ConnectionId);
            }
        }
예제 #2
0
 /// <summary>
 /// Called when a connection disconnects from this hub gracefully or due to a timeout.
 /// </summary>
 /// <param name="stopCalled">
 /// true, if stop was called on the client closing the connection gracefully;
 /// false, if the connection has been lost for longer than the
 /// <see cref="P:Microsoft.AspNet.SignalR.Configuration.IConfigurationManager.DisconnectTimeout" />.
 /// Timeouts can be caused by clients reconnecting to another SignalR server in scaleout.
 /// </param>
 /// <returns>A <see cref="T:System.Threading.Tasks.Task" /></returns>
 public override Task OnDisconnected(bool stopCalled)
 {
     SessionTimer.StopTimer(Context.ConnectionId);
     return(base.OnDisconnected(stopCalled));
 }
예제 #3
0
 /// <summary>
 /// Called when the connection connects to this hub instance.
 /// </summary>
 /// <returns>A <see cref="T:System.Threading.Tasks.Task" /></returns>
 public override Task OnConnected()
 {
     SessionTimer.StartTimer(Context.ConnectionId);
     return(base.OnConnected());
 }