io.vertx.core.Context.isWorkerContext()方法的使用及代码示例

x33g5p2x  于2022-01-18 转载在 其他  
字(7.9k)|赞(0)|评价(0)|浏览(122)

本文整理了Java中io.vertx.core.Context.isWorkerContext()方法的一些代码示例,展示了Context.isWorkerContext()的具体用法。这些代码示例主要来源于Github/Stackoverflow/Maven等平台,是从一些精选项目中提取出来的代码,具有较强的参考意义,能在一定程度帮忙到你。Context.isWorkerContext()方法的具体详情如下:
包路径:io.vertx.core.Context
类名称:Context
方法名:isWorkerContext

Context.isWorkerContext介绍

[英]Is the current context a worker 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#isWorkerContext()will return false.
[中]当前上下文是否为工作上下文?
笔记当使用io运行阻塞代码时。维特斯。果心Vertx#ExecuteBlock(Handler,Handler)从标准(非工作者)垂直链接,上下文仍将是事件循环上下文,此#isWorkerContext()将返回false。

代码示例

代码示例来源:origin: eclipse-vertx/vert.x

@Test
public void testDeployWorkerFromTestThread() throws Exception {
 MyVerticle verticle = new MyVerticle();
 vertx.deployVerticle(verticle, new DeploymentOptions().setWorker(true), ar -> {
  assertDeployment(1, verticle, null, ar);
  assertTrue(verticle.startContext.isWorkerContext());
  vertx.undeploy(ar.result(), ar2 -> {
   assertTrue(ar2.succeeded());
   assertEquals(verticle.startContext, verticle.stopContext);
   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

@Override
public void start() throws Exception {
 assertTrue(Vertx.currentContext().isWorkerContext());
 assertTrue(Context.isOnWorkerThread());
 HttpServer server1 = vertx.createHttpServer(new HttpServerOptions()
     .setHost(HttpTestBase.DEFAULT_HTTP_HOST).setPort(HttpTestBase.DEFAULT_HTTP_PORT));
 server1.requestHandler(req -> {
  assertTrue(Vertx.currentContext().isWorkerContext());
  assertTrue(Context.isOnWorkerThread());
  Buffer buf = Buffer.buffer();
  });
 }).listen(onSuccess(s -> {
  assertTrue(Vertx.currentContext().isWorkerContext());
  assertTrue(Context.isOnWorkerThread());
  HttpClient client = vertx.createHttpClient();
  client.put(HttpTestBase.DEFAULT_HTTP_PORT, HttpTestBase.DEFAULT_HTTP_HOST, "/blah", onSuccess(resp -> {
   assertEquals(200, resp.statusCode());
   assertTrue(Vertx.currentContext().isWorkerContext());
   assertTrue(Context.isOnWorkerThread());
   resp.handler(buf -> {

代码示例来源: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: io.vertx/vertx-rx-java

/**
 * Is the current context a worker context?
 * <p>
 * NOTE! when running blocking code using {@link io.vertx.rxjava.core.Vertx#executeBlocking} from a
 * standard (not worker) verticle, the context will still an event loop context and this 
 * will return false.
 * @return true if the current context is a worker context, false otherwise
 */
public boolean isWorkerContext() { 
 boolean ret = delegate.isWorkerContext();
 return ret;
}

代码示例来源:origin: vert-x3/vertx-rx

/**
 * Is the current context a worker context?
 * <p>
 * NOTE! when running blocking code using {@link io.vertx.rxjava.core.Vertx#executeBlocking} from a
 * standard (not worker) verticle, the context will still an event loop context and this 
 * will return false.
 * @return true if the current context is a worker context, false otherwise
 */
public boolean isWorkerContext() { 
 boolean ret = delegate.isWorkerContext();
 return ret;
}

代码示例来源:origin: io.vertx/vertx-core

@Test
public void testDeployWorkerFromTestThread() throws Exception {
 MyVerticle verticle = new MyVerticle();
 vertx.deployVerticle(verticle, new DeploymentOptions().setWorker(true), ar -> {
  assertDeployment(1, verticle, null, ar);
  assertTrue(verticle.startContext.isWorkerContext());
  vertx.undeploy(ar.result(), ar2 -> {
   assertTrue(ar2.succeeded());
   assertEquals(verticle.startContext, verticle.stopContext);
   testComplete();
  });
 });
 await();
}

代码示例来源:origin: io.vertx/vertx-core

@Override
public void start() throws Exception {
 assertTrue(Vertx.currentContext().isWorkerContext());
 assertTrue(Context.isOnWorkerThread());
 HttpServer server1 = vertx.createHttpServer(new HttpServerOptions()
     .setHost(HttpTestBase.DEFAULT_HTTP_HOST).setPort(HttpTestBase.DEFAULT_HTTP_PORT));
 server1.requestHandler(req -> {
  assertTrue(Vertx.currentContext().isWorkerContext());
  assertTrue(Context.isOnWorkerThread());
  Buffer buf = Buffer.buffer();
  });
 }).listen(onSuccess(s -> {
  assertTrue(Vertx.currentContext().isWorkerContext());
  assertTrue(Context.isOnWorkerThread());
  HttpClient client = vertx.createHttpClient();
  client.put(HttpTestBase.DEFAULT_HTTP_PORT, HttpTestBase.DEFAULT_HTTP_HOST, "/blah", resp -> {
   assertEquals(200, resp.statusCode());
   assertTrue(Vertx.currentContext().isWorkerContext());
   assertTrue(Context.isOnWorkerThread());
   resp.handler(buf -> {

代码示例来源: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();
}

代码示例来源:origin: io.vertx/vertx-core

@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);
  assertFalse(verticle.startContext.isMultiThreadedWorkerContext());
  assertTrue(verticle.startContext.isWorkerContext());
  assertFalse(verticle.startContext.isEventLoopContext());
  vertx.undeploy(ar.result(), ar2 -> {
   assertTrue(ar2.succeeded());
   assertEquals(verticle.startContext, verticle.stopContext);
   testComplete();
  });
 });
 await();
}

代码示例来源:origin: io.vertx/vertx-core

@Test
public void testDeployMultithreadedWorkerWithConfig() throws Exception {
 MyVerticle verticle = new MyVerticle();
 JsonObject conf = generateJSONObject();
 vertx.deployVerticle(verticle, new DeploymentOptions().setConfig(conf).setWorker(true).setMultiThreaded(true), ar -> {
  assertDeployment(1, verticle, conf, ar);
  assertTrue(verticle.startContext.isMultiThreadedWorkerContext());
  assertTrue(verticle.startContext.isWorkerContext());
  assertFalse(verticle.startContext.isEventLoopContext());
  vertx.undeploy(ar.result(), ar2 -> {
   assertTrue(ar2.succeeded());
   assertEquals(verticle.startContext, verticle.stopContext);
   testComplete();
  });
 });
 await();
}

代码示例来源:origin: io.eventuate.client.java/eventuate-client-java-http-stomp

public static Context getContext(Vertx vertx) {
  Context context = vertx.getOrCreateContext();

  if (context.isEventLoopContext()) {
   logger.trace("Context attached to Event Loop");
  } else if (context.isWorkerContext()) {
   logger.trace("Context attached to Worker Thread");
  } else if (context.isMultiThreadedWorkerContext()) {
   logger.trace("Context attached to Worker Thread - multi threaded worker");
  } else if (! Context.isOnVertxThread()) {
   logger.trace("Context not attached to a thread managed by vert.x");
  }
  return context;
 }
}

代码示例来源:origin: eventuate-clients/eventuate-client-java

public static Context getContext(Vertx vertx) {
  Context context = vertx.getOrCreateContext();

  if (context.isEventLoopContext()) {
   logger.trace("Context attached to Event Loop");
  } else if (context.isWorkerContext()) {
   logger.trace("Context attached to Worker Thread");
  } else if (context.isMultiThreadedWorkerContext()) {
   logger.trace("Context attached to Worker Thread - multi threaded worker");
  } else if (! Context.isOnVertxThread()) {
   logger.trace("Context not attached to a thread managed by vert.x");
  }
  return context;
 }
}

代码示例来源:origin: reactiverse/es4x

worker = context.isWorkerContext() || context.isMultiThreadedWorkerContext();

相关文章