当前位置: 首页 > news >正文

建设部执业考试网站外贸建站优化

建设部执业考试网站,外贸建站优化,网页制作超链接代码,黄岛开发区做网站的公司在Java的并发API中,CountDownLatch是一个同步器,它允许一个或多个线程等待一组操作完成。 如果您正在开发一个服务器应用程序,该应用程序在开始处理请求之前需要初始化各种资源。这些资源可能是这样的: 加载配置文件建立数据库连…

在Java的并发API中,CountDownLatch是一个同步器,它允许一个或多个线程等待一组操作完成。

如果您正在开发一个服务器应用程序,该应用程序在开始处理请求之前需要初始化各种资源。这些资源可能是这样的:

  • 加载配置文件
  • 建立数据库连接
  • 初始化缓存
  • 启动嵌入式服务器或服务

CountDownLatch 使用给定计数进行初始化,表示释放锁存器之前必须发生的操作数。每个操作都会减少该计数。当计数达到零时,所有等待线程都将被释放,并且任何后续调用这个CountDownLatch锁存器的方法都将直接通过而不会阻塞。

以下是使用代码,完整来源

   public static void main(String[] args) throws IOException, InterruptedException {
var server = HttpServer.create(new InetSocketAddress(8000), 0);
server.setExecutor(Executors.newVirtualThreadPerTaskExecutor());
server.createContext("/hello", new GreetingsHandler());

        CountDownLatch latch = new CountDownLatch(4);

        Thread.startVirtualThread(new Task("Load Config", latch));
Thread.startVirtualThread(new Task("Init DB Connection", latch));
Thread.startVirtualThread(new Task("Init Cache", latch));
Thread.startVirtualThread(new Task("Start Embedded Server", latch));

        latch.await();

        System.out.println("All initializations complete. Application is starting...");

        server.start();
}
}

record Task(String name, CountDownLatch latch) implements Runnable {
@Override
public void run() {
doHeavyLifting();
System.out.println(name + " has finished.");
latch.countDown();
}

    private static void doHeavyLifting() {
try {
TimeUnit.SECONDS.sleep(30);
} catch (InterruptedException e) {
throw new RuntimeException(e);
}
}
}

class GreetingsHandler implements HttpHandler {
@Override
public void handle(HttpExchange t) throws IOException {
String response = "Hello world!";
t.sendResponseHeaders(200, response.length());
OutputStream os = t.getResponseBody();
os.write(response.getBytes());
os.close();
}
}

  • 在本例中,我们初始化了一个 CountDownLatch,计数为 4。

  • 然后,我们创建了四个虚拟线程。每个任务完成后都会调用锁存器Latch上的 countDown()。

  • 主线程通过调用锁存器上的 await() 来等待这些任务。

  • 当计数为零时,将显示 "所有初始化完成,应用程序正在启动......

    All initializations complete. Application is starting...

    "的消息。

  • 然后我们启动服务器。

https://www.jdon.com/69019.html

http://www.tj-hxxt.cn/news/97911.html

相关文章:

  • 做网站送的小程序有什么用如何做互联网营销推广
  • 免费网站建设自助建站微信营销软件哪个好用
  • 如何在外管局网站做延期收汇投广告哪个平台好
  • 一个人做网站 知乎营销推广的公司
  • 西宁网站托管优化大师官方免费下载
  • 网站的网站制作公司邯郸seo优化
  • wordpress使用又拍云后西安seo网站排名
  • 上海网站建设网站开发网站制作教程视频
  • 什么网站可以找免费模板南宁seo收费
  • wordpress模板搜索功能404甘肃新站优化
  • 句容建设局网站丈哥seo博客
  • 广州网站建设 易企建站公司网站seo设计方案案例
  • 免费1g网站aso优化技术
  • 动态网站开发商城网站长沙企业seo服务
  • 厦门网站建设满山红百度如何推广广告
  • 全国做网站公司排名免费域名注册平台有哪些
  • 做视频网站赚做视频网站赚优就业seo
  • 用node.js可以做网站吗小程序推广运营的公司
  • 南宁做网站seo广州seo学徒
  • 北京市专业网站制作企业昆明百度推广优化
  • 深圳网站建设优化百度拉新推广平台
  • 昆明网站建设是什么百度总部客服电话
  • 盘古网络建站seo辅助工具
  • 做高端网站百度电脑版
  • 企业做网站需要花多少钱百度搜索关键词排行榜
  • 北京网站推广长沙seo就选智优营家
  • 网站的大小百度seo费用
  • 建站语言网络营销方式有哪几种
  • 网站建设的论文信息流广告推广
  • 网站优化毕业设计营销型网站内容