Ejemplo n.º 1
0
 public MQRpcClientBase(IRabbitMQPersistentConnection rabbitMQPersistentConnection, string clientName, ILogger logger, IQpsCounter counter)
 {
     signal                = new AutoResetEvent(false);
     _clientName           = clientName ?? throw new ArgumentNullException(nameof(clientName));
     _logger               = logger ?? throw new ArgumentNullException(nameof(logger));
     _qps                  = counter ?? throw new ArgumentNullException(nameof(IQpsCounter));
     _persistentConnection = rabbitMQPersistentConnection ?? throw new ArgumentNullException(nameof(rabbitMQPersistentConnection));
     methodPoll            = new ConcurrentDictionary <long, CallMeta>();
     CreateConsumerChannel();
 }
Ejemplo n.º 2
0
 internal RPCServer(IRabbitMQPersistentConnection conn, ILogger <RPCServer> logger, RpcServerConfig config, ILifetimeScope autofac, IQpsCounter qps)
 {
     config.ApplicationId = config.ApplicationId.ToLower();
     _routing             = new RoutingTables();
     _routing.LoadControlers(config.ApplicationId);
     _autofac = autofac;
     _logger  = logger;
     _conn    = conn;
     _qps     = qps;
     Configs  = config;
     CreatePublishChannel();
     CreateConsumerChannel();
 }
Ejemplo n.º 3
0
 public SleepTaskResult(IQpsCounter counter)
 {
     //channels = ThreadChannels.Create(8);
     channels     = new ThreadDispatcher <TaskCompletionSource <bool> >(DoWork, 4);
     this.counter = counter;
 }