4.5. 线程更改


本节介绍线程中的更改。

4.5.1. 非 Eclipse Vert.x 线程的上下文关联性

Vertx.getOrCreateContext () 方法为每个非 Eclipse Vert.x 线程创建一个上下文。非 Eclipse Vert.x 线程在首次创建上下文时与上下文关联。在早期版本中,每次从非 Eclipse Vert.x 线程调用方法时,都会创建一个新上下文。

new Thread(() -> {
  assertSame(vertx.getOrCreateContext(), vertx.getOrCreateContext());
}).start();

这个更改不会影响您的应用程序,除非应用程序隐式依赖于每个调用创建新上下文。

在以下示例中,因为每个阻塞代码在不同的上下文上调用了 n 块,所以 n 块会同时运行。

for (int i = 0;i < n;i++) {
  vertx.executeBlocking(block, handler);
}

要在 Eclipse Vert.x 4 中获得相同的结果,您必须更新代码:

for (int i = 0;i < n;i++) {
  vertx.executeBlocking(block, false, handler);
}
Red Hat logoGithubRedditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

通过我们的产品和服务,以及可以信赖的内容,帮助红帽用户创新并实现他们的目标。

让开源更具包容性

红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。欲了解更多详情,请参阅红帽博客.

關於紅帽

我们提供强化的解决方案,使企业能够更轻松地跨平台和环境(从核心数据中心到网络边缘)工作。

© 2024 Red Hat, Inc.