Esempio n. 1
0
 internal ObserveOnSubscriber(IFlowableSubscriber <T> actual, IExecutorWorker worker, int bufferSize)
 {
     this.actual     = actual;
     this.worker     = worker;
     this.bufferSize = bufferSize;
     this.limit      = bufferSize - (bufferSize >> 2);
 }
Esempio n. 2
0
 internal SubscribeOnSubscriber(IFlowableSubscriber <T> actual, IExecutorWorker worker, bool requestOn, IFlowable <T> source)
 {
     this.actual    = actual;
     this.worker    = worker;
     this.source    = source;
     this.requestOn = requestOn;
 }
 internal DebounceSubscriber(IFlowableSubscriber <T> actual, TimeSpan delay, IExecutorWorker worker)
 {
     this.actual = actual;
     this.delay  = delay;
     this.worker = worker;
     this.latest = First;
 }
Esempio n. 4
0
        public override void Subscribe(IFlowableSubscriber <T> subscriber)
        {
            IExecutorWorker worker = executor.Worker;
            var             s      = new SubscribeOnSubscriber(subscriber, worker, requestOn, source);

            subscriber.OnSubscribe(s);
            worker.Schedule(s.Run);
        }
 internal MulticastSubscription(MulticastPublisher <T> parent, IFlowableSubscriber <T> actual, IExecutorWorker worker, int bufferSize)
 {
     this.parent = parent;
     this.actual = actual;
     this.queue  = new SpscArrayQueue <T>(bufferSize);
     this.worker = worker;
     this.run    = Run;
 }
Esempio n. 6
0
 internal AbstractRunOnSubscriber(int bufferSize, IExecutorWorker worker)
 {
     this.bufferSize = bufferSize;
     this.worker     = worker;
     this.limit      = bufferSize - (bufferSize >> 2);
     this.queue      = new SpscArrayQueue <T>(bufferSize);
     this.run        = Drain;
 }
Esempio n. 7
0
 internal TimeoutSubscriber(IFlowableSubscriber <T> actual, TimeSpan firstTimeout,
                            TimeSpan itemTimeout, IExecutorWorker worker, IPublisher <T> fallback)
 {
     this.actual       = actual;
     this.firstTimeout = firstTimeout;
     this.itemTimeout  = itemTimeout;
     this.worker       = worker;
     this.fallback     = fallback;
 }
Esempio n. 8
0
 /// <summary>
 /// Creates an IExecutorService that shares the given
 /// worker instance (from another IExecutorService).
 /// </summary>
 /// <param name="worker">The worker instance to use as a
 /// backing executor.</param>
 /// <returns>The new IExecutorService instance.</returns>
 public static IExecutorService NewShared(IExecutorWorker worker)
 {
     return(new SharedExecutorService(worker));
 }
 internal SharedExecutorWorker(IExecutorWorker shared)
 {
     this.tasks  = new HashSet <InterruptibleAction>();
     this.shared = shared;
 }
 internal SharedExecutorService(IExecutorWorker shared)
 {
     this.shared = shared;
 }
 internal DelaySubscriber(IFlowableSubscriber <T> actual, TimeSpan delay, IExecutorWorker worker)
 {
     this.actual = actual;
     this.delay  = delay;
     this.worker = worker;
 }
Esempio n. 12
0
 internal RunOnConditionalSubscriber(IConditionalSubscriber <T> actual, int bufferSize, IExecutorWorker worker) : base(bufferSize, worker)
 {
     this.actual = actual;
 }
Esempio n. 13
0
 internal RunOnSubscriber(IFlowableSubscriber <T> actual, int bufferSize, IExecutorWorker worker) : base(bufferSize, worker)
 {
     this.actual = actual;
 }