打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
为什么要使用多线程?

Java程序天生就是多线程程序,在Java程序中执行一个main()方法其实是main线程和多个其他线程的同时运行。如下面所示:

import java.lang.management.ManagementFactory;import java.lang.management.ThreadInfo;import java.lang.management.ThreadMXBean;public class readExcel { public static void main(String[] args) { ThreadMXBean threadMXBean = ManagementFactory.getThreadMXBean(); ThreadInfo[] threadInfos = threadMXBean.dumpAllThreads(false, false); for (ThreadInfo threadInfo :threadInfos){ System.out.println('[' + threadInfo.getThreadId() + ']' + threadInfo.getThreadName()); } }}
输出如下所示:[6]Monitor Ctrl-Break[5]Attach Listener[4]Signal Dispatcher    //分发处理发送给JVM信号的线程[3]Finalizer        //调用finalize方法的线程        [2]Reference Handler   //清除Reference的线程[1]main                  //main线程,用户程序入口

为什么要使用多线程?

(1)更多的处理器核心

一个单线程程序在运行时只能使用一个处理器核心,那么再多的处理器核心加入也无法显著该程序的执行效率。相反,如果该程序使用多线程技术,将计算逻辑分配到多个处理器核心上,就会显著减少程序的处理时间,并且随着更多处理器核心的加入而变得更有效率。

(2)更快的响应时间

可以使用多线程技术,将数据一致性不强的操作派发给其他线程处理(也可以使用消息队列)。这样做的好处是响应用户请求的线程能够尽可能快地处理完成,缩短响应时间,提升用户体验。

例如:用户提交一次订单,后续会等待一系列操作全部完成才能看到订购成功的结果。对于其中的一些业务操作,可以考虑交给其他线程处理,从而使其更快地完成。

(3)更好的编程模型

Java为多线程编程提供了良好、考究并且一致的编程模型,当开发人员为所遇到的问题建立合适的模型之后,稍作修改就能够方便地映射到Java提供的多线程编程模型上。

本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
【热】打开小程序,算一算2024你的财运
如何通过编程发现Java死锁
带你走进Java多线程编程的神秘世界
详细解析Java编程语言的特点
Java 5.0多线程编程学习资料笔录
面向对象多线程编程之 前言
Java编程语言如何完善自己的缺点-Java频道-中国IT实验室
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服