当前位置: 首页>>代码示例>>Java>>正文


Java Scheduler类代码示例

本文整理汇总了Java中io.reactivex.Scheduler的典型用法代码示例。如果您正苦于以下问题:Java Scheduler类的具体用法?Java Scheduler怎么用?Java Scheduler使用的例子?那么, 这里精选的类代码示例或许可以为您提供帮助。


Scheduler类属于io.reactivex包,在下文中一共展示了Scheduler类的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。

示例1: starting

import io.reactivex.Scheduler; //导入依赖的package包/类
@Override
protected void starting(Description description) {
  if (restoreHandlers) {
    // https://github.com/ReactiveX/RxAndroid/pull/358
    //            originalInitMainThreadInitHandler =
    // RxAndroidPlugins.getInitMainThreadScheduler();
    //            originalMainThreadHandler = RxAndroidPlugins.getMainThreadScheduler();
  }
  RxAndroidPlugins.reset();
  RxAndroidPlugins.setInitMainThreadSchedulerHandler(
      new Function<Callable<Scheduler>, Scheduler>() {
        @Override
        public Scheduler apply(Callable<Scheduler> schedulerCallable) throws Exception {
          return delegatingMainThreadScheduler;
        }
      });
  RxAndroidPlugins.setMainThreadSchedulerHandler(
      new Function<Scheduler, Scheduler>() {
        @Override
        public Scheduler apply(Scheduler scheduler) throws Exception {
          return delegatingMainThreadScheduler;
        }
      });
}
 
开发者ID:uber,项目名称:RIBs,代码行数:25,代码来源:AndroidSchedulersRule.java

示例2: defaultMainThreadSchedulerIsInitializedLazily

import io.reactivex.Scheduler; //导入依赖的package包/类
@Test
public void defaultMainThreadSchedulerIsInitializedLazily() {
	Function<Callable<Scheduler>, Scheduler> safeOverride = new Function<Callable<Scheduler>, Scheduler>() {
		@Override
		public Scheduler apply(Callable<Scheduler> scheduler) {
			return new EmptyScheduler();
		}
	};
	Callable<Scheduler> unsafeDefault = new Callable<Scheduler>() {
		@Override
		public Scheduler call() throws Exception {
			throw new AssertionError();
		}
	};

	RxSwtPlugins.setInitMainThreadSchedulerHandler(safeOverride);
	RxSwtPlugins.initMainThreadScheduler(unsafeDefault);
}
 
开发者ID:SimonScholz,项目名称:RxSWT,代码行数:19,代码来源:RxSwtPluginsTest.java

示例3: demo2

import io.reactivex.Scheduler; //导入依赖的package包/类
private static void demo2() throws Exception {
    final ExecutorService executor = Executors.newFixedThreadPool(1000);
    final Scheduler pooledScheduler = Schedulers.from(executor);

    Observable.range(1, 10000)
            .flatMap(i -> Observable.just(i)
                    .subscribeOn(pooledScheduler)
                    .map(Sandbox::importantLongTask)
            )
            .doOnTerminate(WAIT_LATCH::countDown)
            .map(Objects::toString)
            .subscribe(e -> log("subscribe", e));

    WAIT_LATCH.await();
    executor.shutdown();
}
 
开发者ID:PacktPublishing,项目名称:Reactive-Android-Programming,代码行数:17,代码来源:Sandbox.java

示例4: initExtractScheduler

import io.reactivex.Scheduler; //导入依赖的package包/类
/**
 * Initializes a scheduler that will be used for offloading IO work performed by {@link Extract}s
 * <p/>
 * <p/> Threads executed on this scheduler have {@link Thread#NORM_PRIORITY}
 * @param ioPoolSize Size of thread pool for this scheduler
 */
private Scheduler initExtractScheduler(Integer ioPoolSize) {
    ThreadFactory factory = newThreadFactory("TaskManager-Extract-%s", Thread.NORM_PRIORITY);
    ExecutorService executor = Executors.newFixedThreadPool(ioPoolSize, factory);
    shutdownHook.registerExecutor(executor);
    return Schedulers.from(executor);
}
 
开发者ID:salesforce,项目名称:pyplyn,代码行数:13,代码来源:TaskManager.java

示例5: testapplyRequireNonNullThrowsNPE

import io.reactivex.Scheduler; //导入依赖的package包/类
@Test(expected = NullPointerException.class)
public void testapplyRequireNonNullThrowsNPE() {
	RxSwtPlugins.applyRequireNonNull(new Function<Callable<Scheduler>, Scheduler>() {

		@Override
		public Scheduler apply(Callable<Scheduler> t) throws Exception {
			return null;
		}
	}, null);
}
 
开发者ID:SimonScholz,项目名称:RxSWT,代码行数:11,代码来源:RxSwtPluginsTest.java

示例6: init

import io.reactivex.Scheduler; //导入依赖的package包/类
@BeforeClass public static void init() throws Exception {
  // Tell RxAndroid to not use android main ui thread scheduler
  RxAndroidPlugins.setInitMainThreadSchedulerHandler(
      new Function<Callable<Scheduler>, Scheduler>() {
        @Override public Scheduler apply(@NonNull Callable<Scheduler> schedulerCallable)
            throws Exception {
          return Schedulers.trampoline();
        }
      });
}
 
开发者ID:weiwenqiang,项目名称:GitHub,代码行数:11,代码来源:HomePresenterTest.java

示例7: initLoadScheduler

import io.reactivex.Scheduler; //导入依赖的package包/类
/**
 * Initializes a scheduler that will be used for offloading IO work performed by {@link Load}s
 * <p/>
 * <p/> Threads executed on this scheduler have {@link Thread#NORM_PRIORITY}+2
 * @param ioPoolSize Size of thread pool for this scheduler
 */
private Scheduler initLoadScheduler(Integer ioPoolSize) {
    ThreadFactory factory = newThreadFactory("TaskManager-Load-%s", Thread.NORM_PRIORITY + 2);
    ExecutorService executor = Executors.newFixedThreadPool(ioPoolSize, factory);
    shutdownHook.registerExecutor(executor);
    return Schedulers.from(executor);
}
 
开发者ID:salesforce,项目名称:pyplyn,代码行数:13,代码来源:TaskManager.java

示例8: applyRequireNonNull

import io.reactivex.Scheduler; //导入依赖的package包/类
static Scheduler applyRequireNonNull(Function<Callable<Scheduler>, Scheduler> f, Callable<Scheduler> s) {
    Scheduler scheduler = apply(f,s);
    if (scheduler == null) {
        throw new NullPointerException("Scheduler Callable returned null");
    }
    return scheduler;
}
 
开发者ID:SimonScholz,项目名称:RxSWT,代码行数:8,代码来源:RxSwtPlugins.java

示例9: applyAsync

import io.reactivex.Scheduler; //导入依赖的package包/类
/**
 * Overrides the default implementation, to simplify implementing async transforms
 * <p/>
 * <p/> {@link PollingTransform}s are observed on the specified scheduler
 */
@Override
public Flowable<List<List<Transmutation>>> applyAsync(List<List<Transmutation>> input, Scheduler scheduler) {
    // determine if the implementing class should run
    if (skipTransform(input)) {
        return Flowable.just(input);
    }

    // remove items that should not be processed
    List<List<Transmutation>> toProcess = filter(input);
    if (isNull(toProcess)) {
        logger.info("Stopping processing in {} due to threshold not met...", this.getClass().getSimpleName());
        return Flowable.empty();
    }

    return Flowable.just(toProcess)
            .observeOn(scheduler)

            // send payload
            .map(this::sendRequest)

            .flatMap(req -> tryRetrieve(req, -1))

            // or timeout after the specified number of ms
            .timeout(timeoutMillis(), TimeUnit.MILLISECONDS)
            .doOnError(this::logAsyncError)
            .onErrorResumeNext(Flowable.empty());
}
 
开发者ID:salesforce,项目名称:pyplyn,代码行数:33,代码来源:PollingTransform.java

示例10: getInitMainThreadSchedulerHandlerReturnsHandler

import io.reactivex.Scheduler; //导入依赖的package包/类
@Test
public void getInitMainThreadSchedulerHandlerReturnsHandler() {
    Function<Callable<Scheduler>, Scheduler> handler = new Function<Callable<Scheduler>, Scheduler>() {
        @Override public Scheduler apply(Callable<Scheduler> schedulerCallable) throws Exception {
            return Schedulers.trampoline();
        }
    };
    RxAndroidPlugins.setInitMainThreadSchedulerHandler(handler);
    assertSame(handler, RxAndroidPlugins.getInitMainThreadSchedulerHandler());
}
 
开发者ID:weiwenqiang,项目名称:GitHub,代码行数:11,代码来源:RxAndroidPluginsTest.java

示例11: RxJava2CallAdapter

import io.reactivex.Scheduler; //导入依赖的package包/类
RxJava2CallAdapter(Type responseType, Scheduler scheduler, boolean isAsync, boolean isResult,
    boolean isBody, boolean isFlowable, boolean isSingle, boolean isMaybe,
    boolean isCompletable) {
  this.responseType = responseType;
  this.scheduler = scheduler;
  this.isAsync = isAsync;
  this.isResult = isResult;
  this.isBody = isBody;
  this.isFlowable = isFlowable;
  this.isSingle = isSingle;
  this.isMaybe = isMaybe;
  this.isCompletable = isCompletable;
}
 
开发者ID:weiwenqiang,项目名称:GitHub,代码行数:14,代码来源:RxJava2CallAdapter.java

示例12: MessageGroupSubscriber

import io.reactivex.Scheduler; //导入依赖的package包/类
private MessageGroupSubscriber(long messageTimeoutNanos,
                               int bufferedMaxMessages,
                               Sender<M, R> sender,
                               Scheduler scheduler) {
  this.messageTimeoutNanos = messageTimeoutNanos == 0 ? Long.MAX_VALUE : messageTimeoutNanos;
  this.bufferedMaxMessages = bufferedMaxMessages;
  this.sender = sender;
  this.scheduler = scheduler;
}
 
开发者ID:tramchamploo,项目名称:buffer-slayer,代码行数:10,代码来源:RxReporter.java

示例13: runningWorkReportsBusy

import io.reactivex.Scheduler; //导入依赖的package包/类
@Test public void runningWorkReportsBusy() {
  Scheduler.Worker worker = scheduler.createWorker();
  worker.schedule(new Runnable() {
    @Override public void run() {
      assertBusy();
    }
  });
  delegate.triggerActions();
}
 
开发者ID:square,项目名称:RxIdler,代码行数:10,代码来源:DelegatingIdlingResourceSchedulerTest.java

示例14: TodayWeatherViewModel

import io.reactivex.Scheduler; //导入依赖的package包/类
@Inject @Replaceable
public TodayWeatherViewModel(NavigationController navigation,
                             @RxObservable(PAGE) Observable<Integer> pageChangeObservable,
                             PermissionService permissionService,
                             LocationService locationService, WeatherService weatherService,
                             TodayWeatherResponseFilter weatherParser,
                             @RxScheduler(MAIN) Scheduler androidScheduler) {
    super(navigation, pageChangeObservable, permissionService, locationService, weatherService, weatherParser, androidScheduler);
}
 
开发者ID:aschattney,项目名称:dagger-test-example,代码行数:10,代码来源:TodayWeatherViewModel.java

示例15: RxToFXListBinding

import io.reactivex.Scheduler; //导入依赖的package包/类
public RxToFXListBinding(Scheduler scheduler, ObservableList<E> rxList, javafx.collections.ObservableList<E> fxList) {
    this.rxList = rxList;
    this.fxList = fxList;
    fxList.clear();
    disposer.register(rxList.observable().observeOn(scheduler).subscribe(fxList::add));
    disposer.register(rxList.onAdded().observeOn(scheduler).subscribe(c -> fxList.add(c.getIndex(), c.getValue())));
    disposer.register(rxList.onRemoved().observeOn(scheduler).subscribe(c -> fxList.remove(c.getIndex())));
    disposer.register(rxList.onUpdatedChanged().observeOn(scheduler).subscribe(c ->
            fxList.set(c.getNewValue().getIndex(), c.getOldValue().getValue())));
    disposer.register(rxList.onMoved().observeOn(scheduler).subscribe(c ->
            fxList.add(c.getNewValue().getIndex(), fxList.remove(c.getOldValue().getIndex()))));
}
 
开发者ID:FHannes,项目名称:RxJavaCollections,代码行数:13,代码来源:RxToFXListBinding.java


注:本文中的io.reactivex.Scheduler类示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。