예제 #1
0
 public CacheDispatcher(ConcurrentQueue <Request> cacheQueue, ConcurrentQueue <Request> networkQueue, ICache cache, IResponseDelivery delivery)
 {
     this.mCacheQueue   = cacheQueue;
     this.mNetworkQueue = networkQueue;
     this.mCache        = cache;
     this.mDelivery     = delivery;
 }
 public NetworkDispatcher(ConcurrentQueue<Request> queue, INetwork network, ICache cache, IResponseDelivery delivery)
 {
     this.mQueue = queue;
     this.mNetwork = network;
     this.mCache = cache;
     this.mDelivery = delivery;
 }
 public RequestQueue(ICache cache, INetwork network, int threadPoolSize, IResponseDelivery delivery)
 {
     this.mCache = cache;
     this.mNetwork = network;
     this.mDispatchers = new NetworkDispatcher[threadPoolSize];
     this.mDelivery = delivery;
 }
 public RequestQueue(ICache cache, INetwork network, int threadPoolSize, IResponseDelivery delivery)
 {
     this.mCache       = cache;
     this.mNetwork     = network;
     this.mDispatchers = new NetworkDispatcher[threadPoolSize];
     this.mDelivery    = delivery;
 }
 public NetworkDispatcher(ConcurrentQueue <Request> queue, INetwork network, ICache cache, IResponseDelivery delivery)
 {
     this.mQueue    = queue;
     this.mNetwork  = network;
     this.mCache    = cache;
     this.mDelivery = delivery;
 }
예제 #6
0
        public RequestQueue(ILogManager log, ICache cache, INetwork network, IResponseDelivery delivery)
        {
            Log       = log.GetLogger();
            _cache    = cache;
            _network  = network;
            _delivery = delivery;

            Task.Factory.StartNew(CacheConsumer);

            Task.Factory.StartNew(NetworkConsumer);
            Task.Factory.StartNew(NetworkConsumer);
            Task.Factory.StartNew(NetworkConsumer);
            Task.Factory.StartNew(NetworkConsumer);
        }