本文整理了Java中io.vertx.core.Context.isEventLoopContext()
方法的一些代码示例,展示了Context.isEventLoopContext()
的具体用法。这些代码示例主要来源于Github
/Stackoverflow
/Maven
等平台,是从一些精选项目中提取出来的代码,具有较强的参考意义,能在一定程度帮忙到你。Context.isEventLoopContext()
方法的具体详情如下:
包路径:io.vertx.core.Context
类名称:Context
方法名:isEventLoopContext
[英]Is the current context an event loop context?
NOTE! when running blocking code using io.vertx.core.Vertx#executeBlocking(Handler,Handler) from a standard (not worker) verticle, the context will still an event loop context and this this#isEventLoopContext()will return true.
[中]当前上下文是否为事件循环上下文?
笔记当使用io运行阻塞代码时。维特斯。果心Vertx#ExecuteBlock(Handler,Handler)从标准(非工作者)垂直链接,上下文仍将是事件循环上下文,此#isEventLoopContext()将返回true。
代码示例来源:origin: eclipse-vertx/vert.x
stack.set(true);
stream.endHandler(v -> {
assertTrue(Vertx.currentContext().isEventLoopContext());
assertNull(stack.get());
if (done.incrementAndGet() == 2) {
assertTrue(Vertx.currentContext().isEventLoopContext());
assertNull(stack.get());
ThreadLocal<Object> stack2 = new ThreadLocal<>();
stack2.set(true);
server.close(v -> {
assertTrue(Vertx.currentContext().isEventLoopContext());
assertNull(stack2.get());
if (done.incrementAndGet() == 2) {
代码示例来源:origin: eclipse-vertx/vert.x
stack.set(true);
stream.endHandler(v -> {
assertTrue(Vertx.currentContext().isEventLoopContext());
assertNull(stack.get());
if (done.incrementAndGet() == 2) {
assertTrue(Vertx.currentContext().isEventLoopContext());
assertNull(stack.get());
ThreadLocal<Object> stack2 = new ThreadLocal<>();
stack2.set(true);
server.close(v -> {
assertTrue(Vertx.currentContext().isEventLoopContext());
assertNull(stack2.get());
if (done.incrementAndGet() == 2) {
代码示例来源:origin: eclipse-vertx/vert.x
@Test
public void testConsumerHandlesCompletionAsynchronously() {
MessageConsumer<Object> consumer = eb.consumer(ADDRESS1);
ThreadLocal<Object> stack = new ThreadLocal<>();
stack.set(true);
consumer.completionHandler(v -> {
assertNull(stack.get());
assertTrue(Vertx.currentContext().isEventLoopContext());
testComplete();
});
consumer.handler(msg -> {
});
await();
}
代码示例来源:origin: eclipse-vertx/vert.x
stack.set(true);
stream.endHandler(v -> {
assertTrue(Vertx.currentContext().isEventLoopContext());
assertNull(stack.get());
if (done.incrementAndGet() == 2) {
assertTrue(Vertx.currentContext().isEventLoopContext());
assertNull(stack.get());
ThreadLocal<Object> stack2 = new ThreadLocal<>();
stack2.set(true);
server.close(v -> {
assertTrue(Vertx.currentContext().isEventLoopContext());
assertNull(stack2.get());
if (done.incrementAndGet() == 2) {
代码示例来源:origin: eclipse-vertx/vert.x
@Test
public void testTimeoutStreamEndCallbackAsynchronously() {
TimeoutStream stream = vertx.timerStream(200);
ThreadLocal<Object> stack = new ThreadLocal<>();
stack.set(true);
stream.endHandler(v2 -> {
assertTrue(Vertx.currentContext().isEventLoopContext());
assertNull(stack.get());
testComplete();
});
stream.handler(id -> {
});
await();
}
代码示例来源:origin: eclipse-vertx/vert.x
@Test
public void testConsumerHandlesCompletionAsynchronously2() {
MessageConsumer<Object> consumer = eb.consumer(ADDRESS1);
consumer.handler(msg -> {
});
ThreadLocal<Object> stack = new ThreadLocal<>();
stack.set(true);
consumer.completionHandler(v -> {
assertNull(stack.get());
assertTrue(Vertx.currentContext().isEventLoopContext());
testComplete();
});
await();
}
代码示例来源:origin: eclipse-vertx/vert.x
@Test
public void testMultipleServerClose() {
this.server = vertx.createHttpServer(new HttpServerOptions().setPort(DEFAULT_HTTP_PORT));
AtomicInteger times = new AtomicInteger();
// We assume the endHandler and the close completion handler are invoked in the same context task
ThreadLocal stack = new ThreadLocal();
stack.set(true);
server.websocketStream().endHandler(v -> {
assertNull(stack.get());
assertTrue(Vertx.currentContext().isEventLoopContext());
times.incrementAndGet();
});
server.close(ar1 -> {
assertNull(stack.get());
assertTrue(Vertx.currentContext().isEventLoopContext());
server.close(ar2 -> {
server.close(ar3 -> {
assertEquals(1, times.get());
testComplete();
});
});
});
await();
}
代码示例来源:origin: eclipse-vertx/vert.x
@Test
public void testMultipleServerClose() {
this.server = vertx.createNetServer();
AtomicInteger times = new AtomicInteger();
// We assume the endHandler and the close completion handler are invoked in the same context task
ThreadLocal stack = new ThreadLocal();
stack.set(true);
server.connectStream().endHandler(v -> {
assertNull(stack.get());
assertTrue(Vertx.currentContext().isEventLoopContext());
times.incrementAndGet();
});
server.close(ar1 -> {
assertNull(stack.get());
assertTrue(Vertx.currentContext().isEventLoopContext());
server.close(ar2 -> {
server.close(ar3 -> {
assertEquals(1, times.get());
testComplete();
});
});
});
await();
}
代码示例来源:origin: eclipse-vertx/vert.x
@Test
public void testEndHandler() {
ThreadLocal<Object> stack = new ThreadLocal<>();
stack.set(true);
peer2 = vertx.createDatagramSocket(new DatagramSocketOptions());
peer2.listen(1234, "127.0.0.1", ar -> {
assertTrue(ar.succeeded());
peer2.endHandler(v -> {
assertTrue(Vertx.currentContext().isEventLoopContext());
assertNull(stack.get());
testComplete();
});
peer2.close();
});
await();
}
代码示例来源:origin: eclipse-vertx/vert.x
@Test
public void testMultipleServerClose() {
this.server = vertx.createHttpServer(new HttpServerOptions().setPort(DEFAULT_HTTP_PORT));
AtomicInteger times = new AtomicInteger();
// We assume the endHandler and the close completion handler are invoked in the same context task
ThreadLocal stack = new ThreadLocal();
stack.set(true);
server.requestStream().endHandler(v -> {
assertNull(stack.get());
assertTrue(Vertx.currentContext().isEventLoopContext());
times.incrementAndGet();
});
server.close(ar1 -> {
assertNull(stack.get());
assertTrue(Vertx.currentContext().isEventLoopContext());
server.close(ar2 -> {
server.close(ar3 -> {
assertEquals(1, times.get());
testComplete();
});
});
});
await();
}
代码示例来源:origin: eclipse-vertx/vert.x
@Test
public void testConsumerHandlesCompletionAsynchronously1() {
startNodes(2);
MessageConsumer<Object> consumer = vertices[0].eventBus().consumer(ADDRESS1);
ThreadLocal<Object> stack = new ThreadLocal<>();
stack.set(true);
consumer.completionHandler(v -> {
assertTrue(Vertx.currentContext().isEventLoopContext());
assertNull(stack.get());
testComplete();
});
consumer.handler(msg -> {});
await();
}
代码示例来源:origin: eclipse-vertx/vert.x
@Test
public void testAsyncFileCloseHandlerIsAsync() throws Exception {
String fileName = "some-file.dat";
createFileWithJunk(fileName, 100);
AsyncFile file = vertx.fileSystem().openBlocking(testDir + pathSep + fileName, new OpenOptions());
ThreadLocal stack = new ThreadLocal();
stack.set(true);
file.close(ar -> {
assertNull(stack.get());
assertTrue(Vertx.currentContext().isEventLoopContext());
testComplete();
});
await();
}
代码示例来源:origin: eclipse-vertx/vert.x
@Test
public void testDeployFromTestThread() throws Exception {
MyVerticle verticle = new MyVerticle();
vertx.deployVerticle(verticle, ar -> {
assertDeployment(1, verticle, null, ar);
assertFalse(verticle.startContext.isWorkerContext());
assertTrue(verticle.startContext.isEventLoopContext());
testComplete();
});
await();
}
代码示例来源:origin: eclipse-vertx/vert.x
@Test
public void testConsumerHandlesCompletionAsynchronously2() {
startNodes(2);
MessageConsumer<Object> consumer = vertices[0].eventBus().consumer(ADDRESS1);
consumer.handler(msg -> {
});
ThreadLocal<Object> stack = new ThreadLocal<>();
stack.set(true);
consumer.completionHandler(v -> {
assertTrue(Vertx.currentContext().isEventLoopContext());
assertNull(stack.get());
testComplete();
});
await();
}
代码示例来源:origin: eclipse-vertx/vert.x
assertTrue(ctx.isEventLoopContext());
代码示例来源:origin: eclipse-vertx/vert.x
@Test
public void testDeployWorkerWithConfig() throws Exception {
MyVerticle verticle = new MyVerticle();
JsonObject conf = generateJSONObject();
vertx.deployVerticle(verticle, new DeploymentOptions().setConfig(conf).setWorker(true), ar -> {
assertDeployment(1, verticle, conf, ar);
assertTrue(verticle.startContext.isWorkerContext());
assertFalse(verticle.startContext.isEventLoopContext());
vertx.undeploy(ar.result(), ar2 -> {
assertTrue(ar2.succeeded());
assertEquals(verticle.startContext, verticle.stopContext);
testComplete();
});
});
await();
}
代码示例来源:origin: eclipse-vertx/vert.x
@Test
public void testBlockingCreate() {
TestVerticle verticle1 = new TestVerticle();
TestVerticleFactory fact1 = new TestVerticleFactory("aa", verticle1);
fact1.blockingCreate = true;
vertx.registerVerticleFactory(fact1);
String name1 = "aa:myverticle1";
vertx.deployVerticle(name1, new DeploymentOptions(), ar -> {
assertTrue(ar.succeeded());
assertEquals(name1, fact1.identifier);
assertTrue(fact1.blockingCreate);
assertTrue(fact1.createWorkerThread);
assertTrue(fact1.createContext.isEventLoopContext());
testComplete();
});
await();
}
代码示例来源:origin: eclipse-vertx/vert.x
assertTrue(ctx.isEventLoopContext());
vertx.executeBlocking(future -> {
assertSame(ctx, vertx.getOrCreateContext());
代码示例来源:origin: io.vertx/vertx-core
@Test
public void testTimeoutStreamEndCallbackAsynchronously() {
TimeoutStream stream = vertx.timerStream(200);
ThreadLocal<Object> stack = new ThreadLocal<>();
stack.set(true);
stream.endHandler(v2 -> {
assertTrue(Vertx.currentContext().isEventLoopContext());
assertNull(stack.get());
testComplete();
});
stream.handler(id -> {
});
await();
}
代码示例来源:origin: io.vertx/vertx-core
@Test
public void testDeployFromTestThread() throws Exception {
MyVerticle verticle = new MyVerticle();
vertx.deployVerticle(verticle, ar -> {
assertDeployment(1, verticle, null, ar);
assertFalse(verticle.startContext.isMultiThreadedWorkerContext());
assertFalse(verticle.startContext.isWorkerContext());
assertTrue(verticle.startContext.isEventLoopContext());
testComplete();
});
await();
}
内容来源于网络,如有侵权,请联系作者删除!