最近在研究多线程,对JMM,Executor框架,ThreadPoolExecutor都有一定的了解了,但是不清楚在什么业务场景下使用多线程编程会有优势?比如就一般的使用SpringMVC+Spring+Mybatis的从Controller到Service再到Dao的流程,哪里能用多线程处理?多线程处理以后就能提高系统的QPS吗?
认证0级讲师
Java のサーブレット フレームワーク自体はマルチスレッドですが、このスレッドはユーザーではなく Web サーバーによって開始されます。
一般的に、ネットワーク通信を自分で扱う場合は、自分でマルチスレッド処理をするか、バックグラウンドタスクの処理を行う必要があり、さらに自分でマルチスレッド処理を行う必要があります。
マルチスレッドの主な目的:
メインスレッドタスク (バックグラウンドタスク) をブロックしない
同時実行、スループットの向上 (ネットワークマルチスレッド)
Java のサーブレット フレームワーク自体はマルチスレッドですが、このスレッドはユーザーではなく Web サーバーによって開始されます。
一般的に、ネットワーク通信を自分で扱う場合は、自分でマルチスレッド処理をするか、バックグラウンドタスクの処理を行う必要があり、さらに自分でマルチスレッド処理を行う必要があります。
マルチスレッドの主な目的:
メインスレッドタスク (バックグラウンドタスク) をブロックしない
同時実行、スループットの向上 (ネットワークマルチスレッド)