net网站阿里云主机配置电脑优化

张小明 2026/1/13 3:26:32
net网站阿里云主机配置,电脑优化,wordpress图文混排,河北省和城乡建设厅网站首页前言 JDK21可以说是一个史诗级的产品#xff0c;带来了目前Java高并发较为顶级解决方案虚拟线程 #xff0c;话不多说#xff0c;直接来上代码体验一下功能#xff0c;洛阳目前使用的笔记本是华为的matebook D15 2022款#xff0c;16512#xff0c;cpu是i7-1195G7#…前言JDK21可以说是一个史诗级的产品带来了目前Java高并发较为顶级解决方案虚拟线程话不多说直接来上代码体验一下功能洛阳目前使用的笔记本是华为的matebook D15 2022款16512cpu是i7-1195G7idea2024.1.7所有都是使用默认配置话不多说上代码全部代码在最后正文先是一个模拟IO操作的方法// 模拟工作负载的方法privatestaticvoidsimulateWork(){try{// 模拟一个耗时100毫秒的I/O操作Thread.sleep(100);}catch(InterruptedExceptione){// 如果线程被中断重新设置中断状态Thread.currentThread().interrupt();}}使用虚拟线程的测试代码// 使用虚拟线程执行任务的方法privatestaticlongexecuteWithVirtualThreads(inttaskCount)throwsInterruptedException{// 记录开始时间longstartSystem.currentTimeMillis();// 创建一个虚拟线程执行器try(ExecutorServiceexecutorExecutors.newVirtualThreadPerTaskExecutor()){// 提交taskCount个任务到虚拟线程执行器for(inti0;itaskCount;i){executor.submit(Test::simulateWork);}// 关闭执行器不再接受新任务executor.shutdown();// 等待所有任务完成最多等待1小时executor.awaitTermination(1,TimeUnit.HOURS);}// 计算并返回总耗时returnSystem.currentTimeMillis()-start;}使用线程池的测试代码// 使用传统线程执行任务的方法privatestaticlongexecuteWithTraditionalThreads(inttaskCount)throwsInterruptedException{// 记录开始时间longstartSystem.currentTimeMillis();// 创建一个固定大小为100的线程池try(ExecutorServiceexecutorExecutors.newFixedThreadPool(100)){// 提交taskCount个任务到线程池for(inti0;itaskCount;i){executor.submit(Test::simulateWork);}// 关闭线程池不再接受新任务executor.shutdown();// 等待所有任务完成最多等待1小时executor.awaitTermination(1,TimeUnit.HOURS);}// 计算并返回总耗时returnSystem.currentTimeMillis()-start;}格式化时间可有可无// 格式化时间的方法将毫秒转换为更易读的格式privatestaticStringformatTime(longmilliseconds){// 返回格式化的字符串同时显示毫秒数和秒数保留两位小数returnString.format(%d 毫秒 (%.2f 秒),milliseconds,milliseconds/1000.0);}main方法publicstaticvoidmain(String[]args)throwsInterruptedException{// 设置要执行的任务数量inttaskCount100000;// 开始测试传统线程System.out.println(正在使用传统线程执行任务...);// 执行传统线程测试并记录耗时longtraditionalTimeexecuteWithTraditionalThreads(taskCount);// 输出传统线程的执行时间System.out.println(传统线程完成任务耗时 formatTime(traditionalTime));// 开始测试虚拟线程System.out.println(\n正在使用虚拟线程执行任务...);// 执行虚拟线程测试并记录耗时longvirtualTimeexecuteWithVirtualThreads(taskCount);// 输出虚拟线程的执行时间System.out.println(虚拟线程完成任务耗时 formatTime(virtualTime));// 计算两种线程执行时间的差异longtimeDifferencetraditionalTime-virtualTime;// 输出性能差异和速度提升倍数System.out.println(\n性能差异formatTime(timeDifference) (String.format(%.2f,(double)traditionalTime/virtualTime) 倍速度提升));}运行结果正在使用传统线程执行任务...传统线程完成任务耗时106725毫秒(106.73秒)正在使用虚拟线程执行任务...虚拟线程完成任务耗时2014毫秒(2.01秒)性能差异104711毫秒(104.71秒)(52.99倍速度提升)Processfinishedwithexitcode0可以看到使用了虚拟线程之后速度提升了50倍左右至于底层原理之类的那不是洛阳这种小垃圾去看的洛阳只学会能够如何使用就可以了手动狗头以下是整个测试类的完整代码大家可以自己跑一下感受一下但是虚拟线程也并不是说能够无脑上要根据实际情况考虑正所谓没有最好的架构、只有最合适的架构。packagecom.travel.echo.test;importjava.util.concurrent.ExecutorService;importjava.util.concurrent.Executors;importjava.util.concurrent.TimeUnit;/** * Description * Author LuoYang * Date 2025/12/6 周六 */publicclassTest{publicstaticvoidmain(String[]args)throwsInterruptedException{// 设置要执行的任务数量inttaskCount100000;// 开始测试传统线程System.out.println(正在使用传统线程执行任务...);// 执行传统线程测试并记录耗时longtraditionalTimeexecuteWithTraditionalThreads(taskCount);// 输出传统线程的执行时间System.out.println(传统线程完成任务耗时 formatTime(traditionalTime));// 开始测试虚拟线程System.out.println(\n正在使用虚拟线程执行任务...);// 执行虚拟线程测试并记录耗时longvirtualTimeexecuteWithVirtualThreads(taskCount);// 输出虚拟线程的执行时间System.out.println(虚拟线程完成任务耗时 formatTime(virtualTime));// 计算两种线程执行时间的差异longtimeDifferencetraditionalTime-virtualTime;// 输出性能差异和速度提升倍数System.out.println(\n性能差异formatTime(timeDifference) (String.format(%.2f,(double)traditionalTime/virtualTime) 倍速度提升));}// 使用传统线程执行任务的方法privatestaticlongexecuteWithTraditionalThreads(inttaskCount)throwsInterruptedException{// 记录开始时间longstartSystem.currentTimeMillis();// 创建一个固定大小为100的线程池try(ExecutorServiceexecutorExecutors.newFixedThreadPool(100)){// 提交taskCount个任务到线程池for(inti0;itaskCount;i){executor.submit(Test::simulateWork);}// 关闭线程池不再接受新任务executor.shutdown();// 等待所有任务完成最多等待1小时executor.awaitTermination(1,TimeUnit.HOURS);}// 计算并返回总耗时returnSystem.currentTimeMillis()-start;}// 使用虚拟线程执行任务的方法privatestaticlongexecuteWithVirtualThreads(inttaskCount)throwsInterruptedException{// 记录开始时间longstartSystem.currentTimeMillis();// 创建一个虚拟线程执行器try(ExecutorServiceexecutorExecutors.newVirtualThreadPerTaskExecutor()){// 提交taskCount个任务到虚拟线程执行器for(inti0;itaskCount;i){executor.submit(Test::simulateWork);}// 关闭执行器不再接受新任务executor.shutdown();// 等待所有任务完成最多等待1小时executor.awaitTermination(1,TimeUnit.HOURS);}// 计算并返回总耗时returnSystem.currentTimeMillis()-start;}// 模拟工作负载的方法privatestaticvoidsimulateWork(){try{// 模拟一个耗时100毫秒的I/O操作Thread.sleep(100);}catch(InterruptedExceptione){// 如果线程被中断重新设置中断状态Thread.currentThread().interrupt();}}// 格式化时间的方法将毫秒转换为更易读的格式privatestaticStringformatTime(longmilliseconds){// 返回格式化的字符串同时显示毫秒数和秒数保留两位小数returnString.format(%d 毫秒 (%.2f 秒),milliseconds,milliseconds/1000.0);}}结尾悲观者永远正确 乐观者永远前行
版权声明:本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!

广州电商网站建设qq官方网站进入

高性能内存管理利器:bytebufferpool 深度解析与实战指南 【免费下载链接】bytebufferpool Anti-memory-waste byte buffer pool 项目地址: https://gitcode.com/gh_mirrors/by/bytebufferpool 在现代高性能应用开发中,内存管理是决定系统性能的关…

张小明 2026/1/7 20:00:07 网站建设

网站设置flash插件wordpress能做游戏

Excalidraw AI绘图平台支持私有化部署,安全可控 在远程协作成为常态的今天,团队沟通对可视化工具的依赖前所未有。尤其是在系统设计、产品规划和敏捷开发中,一张清晰的架构图或流程图往往胜过千言万语。然而,传统绘图工具操作繁琐…

张小明 2026/1/9 19:40:07 网站建设

网站访问大小 计算流量python线上课程哪个好

Sonic 与 Unity 引擎集成:构建游戏内智能 NPC 对话的新路径 在现代游戏开发中,玩家对沉浸感的期待早已超越了画面精度和物理反馈。当一个 NPC 开口说话时,我们不再满足于“嘴一张一合”的机械动画——我们希望看到情绪、语调、微表情与语音内…

张小明 2026/1/11 10:55:39 网站建设

爱狼戈网站建设个人做外贸怎么做

第一章:Open-AutoGLM 电商库存自动监控在现代电商平台中,实时掌握商品库存状态是保障运营效率的关键。Open-AutoGLM 是一款基于大语言模型与自动化脚本结合的开源工具,专为动态监控电商库存设计,能够自动抓取目标平台商品库存信息…

张小明 2026/1/10 21:25:41 网站建设

大连网站快速排名网站开发的合同履行地

MPC-HC便携化终极方案:告别系统残留的完美改造指南 【免费下载链接】mpc-hc Media Player Classic 项目地址: https://gitcode.com/gh_mirrors/mp/mpc-hc 你是否经历过重装系统后播放器设置全部丢失的崩溃时刻?或者想要在U盘里随身携带一个完全配…

张小明 2026/1/10 17:39:05 网站建设

织梦网站怎么更换模板江苏太仓建设局网站

Wan2.2-T2V-5B在营销自动化中的集成路径探讨你有没有经历过这样的场景? 市场部凌晨发来一条紧急需求:“今天热搜是‘多巴胺穿搭’,我们要在两小时内上线一批短视频!” 🚨 而你的视频团队还在等脚本、等拍摄、等剪辑………

张小明 2026/1/13 0:37:06 网站建设