问题描述
本人身处传统行业,对并发编程涉及不多,目前希望转互联网方向打算恶补多线程知识现有个问题如下: 多线程应用的场景是什么? 我知道开发Application Server需要用到多线程, 我也使用过一些调度任务比如Quartz, Timer等等,还有Sping的线程池创建线程来处理时间很长的后续任务(比如一个请求中,需要完成A:向其他系统传数据 B:阻塞一定时间 C:请求其他系统获得返回结果,这个过程很久,容易超出http时间限制,因此一个请求中的 B 和C 阶段创建一个线程来完成)。 -------- 这些情况都是比较入门的应用, 不知道互联网中大量应用多线程都是哪些情况。 希望有过多线程开发经验的、或者是互联网行业的前辈、兄弟、同志们 赐教 问题补充:hardPass 写道
解决方案
多线程就是为了速度更快,实际中用的特别复杂的不多,比如一个excel有几亿行,一个线程读取肯定速度很慢,用多线程快多了,楼主可以模拟实验一下
解决方案二:
to hardpass请教请教,能不能详细说明一下,给我举个反例
解决方案三:
多线程是为了充分利用硬件资源。单线程就能把你硬件资源耗尽了,那就没必要多线程了。跑个单线程CPU才百分之几,那这个时候就可以多线程了。
解决方案四:
楼上的,,多线程就是为了速度快 这个也没什么错。如果你不追求速度完全可以并行处理啊
解决方案五:
多线程就是为了速度更快?大体上说,不错。但是不能笼统的这么认为。多线程就一定比单线程快?理解并发和并行的区别。
时间: 2024-11-02 12:41:23