public static Fiber threadFiber() { Fiber fiber = new ThreadFiber(); fiber.start(); return fiber; }
/** * Creates and starts a fiber and returns the created instance. * @return The created fiber. */ public static Fiber pooledFiber() { Fiber fiber = FACT.create(); fiber.start(); return fiber; }
/** * Creates and starts a fiber and returns the created instance. * @return The created fiber. */ public static Fiber pooledFiber(Lane<String,ExecutorService> lane) { if(null == lanePoolFactoryMap.get(lane)) { lanePoolFactoryMap.putIfAbsent(lane, new PoolFiberFactory(lane.getUnderlyingLane())); } Fiber fiber = lanePoolFactoryMap.get(lane).create(); fiber.start(); return fiber; }
public Downloader() { PoolFiberFactory f = new PoolFiberFactory(pool); //subscribe multiple fibers for parallel execution for (int i = 0, numThreads = 10; i < numThreads; i++) { Fiber fiber = f.create(); fiber.start(); fibers.add(fiber); channel.subscribe(fiber, new DownloadCallback()); } }
public void start() { executor.start(); }
@Override protected void configure() { install(new StateModule(timeout)); PoolFiberFactory fiberFactory = new PoolFiberFactory(executor); Fiber raftFiber = fiberFactory.create(new BatchExecutor()); raftFiber.start(); bind(Fiber.class).annotatedWith(RaftExecutor.class).toInstance(raftFiber); Fiber stateMachineFiber = fiberFactory.create(new BatchExecutor()); stateMachineFiber.start(); install(new LogModule(logDir, stateMachine, stateMachineFiber)); bind(ClusterConfig.class).toInstance(config); bind(Client.class).asEagerSingleton(); expose(Raft.class); expose(ClusterConfig.class); }