internal SocketManager(IMessagingConfiguration config, ILoggerFactory loggerFactory) { connectionTimeout = config.OpenConnectionTimeout; cache = new LRU <IPEndPoint, Socket>(MAX_SOCKETS, config.MaxSocketAge, SendingSocketCreator); this.logger = loggerFactory.CreateLogger <SocketManager>(); cache.RaiseFlushEvent += FlushHandler; }
internal SocketManager(IOptions <MessagingOptions> options, ILoggerFactory loggerFactory) { var messagingOptions = options.Value; connectionTimeout = messagingOptions.OpenConnectionTimeout; cache = new LRU <IPEndPoint, Socket>(MAX_SOCKETS, messagingOptions.MaxSocketAge, SendingSocketCreator); this.logger = loggerFactory.CreateLogger <SocketManager>(); cache.RaiseFlushEvent += FlushHandler; }
private static void FlushHandler(Object sender, LRU <IPEndPoint, Socket> .FlushEventArgs args) { if (args.Value == null) { return; } CloseSocket(args.Value); NetworkingStatisticsGroup.OnClosedSendingSocket(); }
public TimestampedValue(LRU <TKey, TValue> l, TValue v) { Generation = Interlocked.Increment(ref l.nextGeneration); Value = v; Age = CoarseStopwatch.StartNew(); }
internal SocketManager(IMessagingConfiguration config) { cache = new LRU <IPEndPoint, Socket>(MAX_SOCKETS, config.MaxSocketAge, SendingSocketCreator); cache.RaiseFlushEvent += FlushHandler; }
public TimestampedValue(LRU <TKey, TValue> l, TValue v) { Generation = Interlocked.Increment(ref l.nextGeneration); Value = v; WhenLoaded = DateTime.UtcNow; }
public TimestampedValue(LRU <TKey, TValue> l, TValue v, long generation) { Generation = generation; Value = v; Age = CoarseStopwatch.StartNew(); }