@Override protected void init() { scheduler.scheduleAtFixedRate(() -> { boolean leaked = false; Reference<? extends T> ref; while ((ref = referenceQueue.poll()) != null) { try { leaked = true; Optional.ofNullable(registeredMap.remove(ref)).ifPresent(Action0::call); } catch (Exception e) { System.err.println(e.getMessage()); } } if (!leaked) { noLeakCallback.call(); } }, initialDelay, delay, unit); }
@Override protected void init() { scheduler.scheduleAtFixedRate(() -> { boolean leaked = false; Reference<? extends T> ref; while ((ref = referenceQueue.poll()) != null) { try { leaked = true; Optional.ofNullable(registeredMap.remove(ref)).ifPresent(Action0::call); } catch (Exception e) { System.err.println(e.getMessage()); } } if (!leaked) { noLeakCallback.call(); } }, initialDelay, delay, unit); }
@Override protected void init() { scheduler.scheduleAtFixedRate(() -> checkTaskMap.forEach((name, task) -> { try { task.getTask().call() .thenAccept(result -> Optional.ofNullable(task.getResultListener()).ifPresent(ret -> ret.call(name, result, null))) .exceptionally(ex -> { Optional.ofNullable(task.getResultListener()).ifPresent(ret -> ret.call(name, Result.FAILURE, ex)); return null; }); } catch (Exception ex) { Optional.ofNullable(task.getResultListener()).ifPresent(ret -> ret.call(name, Result.FAILURE, ex)); } }), initialDelay, delay, unit); }
@Override protected void init() { scheduler.scheduleAtFixedRate(() -> checkTaskMap.forEach((name, task) -> { try { task.getTask().call() .thenAccept(result -> Optional.ofNullable(task.getResultListener()).ifPresent(ret -> ret.call(name, result, null))) .exceptionally(ex -> { Optional.ofNullable(task.getResultListener()).ifPresent(ret -> ret.call(name, Result.FAILURE, ex)); return null; }); } catch (Exception ex) { Optional.ofNullable(task.getResultListener()).ifPresent(ret -> ret.call(name, Result.FAILURE, ex)); } }), initialDelay, delay, unit); }
public static void main(String[] args) throws Exception { Scheduler scheduler = Schedulers.createScheduler(); Path path = Paths.get(WebSocketServerDemo.class.getResource("/").toURI()); $.httpServer() .router().get("/static/*").handler(new StaticFileHandler(path.toAbsolutePath().toString())) .router().get("/").handler(ctx -> ctx.renderTemplate("template/websocket/index.mustache")) .webSocket("/helloWebSocket") .onConnect(conn -> { Scheduler.Future future = scheduler.scheduleAtFixedRate(() -> conn.sendText("Current time: " + new Date()), 0, 1, TimeUnit.SECONDS); conn.onClose(c -> future.cancel()); }) .onText((text, conn) -> System.out.println("Server received: " + text)) .listen("localhost", 8080); } }
session.setAttribute(HEARTBEAT_KEY, scheduler.scheduleAtFixedRate( () -> flexConnection.getSession().ping(new PingFrame(false)), configuration.getHeartbeatInterval(),
session.setAttribute(HEARTBEAT_KEY, scheduler.scheduleAtFixedRate( () -> flexConnection.getSession().ping(new PingFrame(false)), configuration.getHeartbeatInterval(),
Scheduler.Future pingFuture = scheduler.scheduleAtFixedRate(() -> getHttp2Session().ping(new PingFrame(false), new Callback() { public void succeeded() { log.info("The session {} sent ping frame success", getSessionId());
Scheduler.Future pingFuture = scheduler.scheduleAtFixedRate(() -> getHttp2Session().ping(new PingFrame(false), new Callback() { public void succeeded() { log.info("The session {} sent ping frame success", getSessionId());
Scheduler.Future pingFuture = scheduler.scheduleAtFixedRate(() -> { PingFrame pingFrame = new PingFrame(); outgoingFrame(pingFrame, new Callback() {
Scheduler.Future pingFuture = scheduler.scheduleAtFixedRate(() -> { PingFrame pingFrame = new PingFrame(); outgoingFrame(pingFrame, new Callback() {