internal ObserveOnSubscriber(IFlowableSubscriber <T> actual, IExecutorWorker worker, int bufferSize) { this.actual = actual; this.worker = worker; this.bufferSize = bufferSize; this.limit = bufferSize - (bufferSize >> 2); }
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; }
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; }
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; }
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; }
/// <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; }
internal RunOnConditionalSubscriber(IConditionalSubscriber <T> actual, int bufferSize, IExecutorWorker worker) : base(bufferSize, worker) { this.actual = actual; }
internal RunOnSubscriber(IFlowableSubscriber <T> actual, int bufferSize, IExecutorWorker worker) : base(bufferSize, worker) { this.actual = actual; }