SIPSorcery.Servers.SIPProxyDispatcher.RemoveExpiredDispatchRecords C# (CSharp) Method

RemoveExpiredDispatchRecords() private method

private RemoveExpiredDispatchRecords ( ) : void
return void
        private void RemoveExpiredDispatchRecords()
        {
            try
            {
                lock (m_transactionEndPoints)
                {
                    (from entry in m_transactionIDAddedAt
                     where entry.Value < DateTime.Now.AddSeconds(MAX_LIFETIME_SECONDS * -1)
                     select entry).ToList().ForEach((entry) =>
                     {
                         //logger.Debug("SIPProxyDispatcher removing expired transactionid=" + entry.Key + ".");
                         m_transactionEndPoints.Remove(entry.Key);
                         m_transactionIDAddedAt.Remove(entry.Key);
                     });
                }

                lock (m_userCallbacks)
                {
                    (from userRecord in m_userCallbacks
                     where userRecord.Value.ExpiresAt < DateTime.Now
                     select userRecord).ToList().ForEach((entry) =>
                     {
                         logger.Debug("SIPProxyDispatcher removing expired callback record for=" + entry.Key + ".");
                         m_userCallbacks.Remove(entry.Key);
                     });
                }
            }
            catch (Exception excp)
            {
                logger.Error("Exception RemoveExpiredTransactionIDs. " + excp.Message);
            }
        }