84669 人が学習中
152542 人が学習中
20005 人が学習中
5487 人が学習中
7821 人が学習中
359900 人が学習中
3350 人が学習中
180660 人が学習中
48569 人が学習中
18603 人が学習中
40936 人が学習中
1549 人が学習中
1183 人が学習中
32909 人が学習中
如果不适用shutdown ,使用 executor执行任务时,就不能退出,也就不能键入控制台命令?线程与控制台之间有什么关系?
另由 控制台 返回,想到 java 的main ( ) 函数由于void,不需要写return 语句, 而 C 语言 main ( ) 函数由于 为int ,需要使用return ()? java 为什么可以这样设置,是出于什么样的机制?
拥有18年软件开发和IT教学经验。曾任多家上市公司技术总监、架构师、项目经理、高级软件工程师等职务。 网络人气名人讲师,...
Thread と Executor は矛盾しています。Thread はプログラム内の実際のスレッドを表す Java に属する基本構造であり、その run メソッドはスレッドの実行プロセスです。 Executor は Thread 上にカプセル化されており、スレッド プールとスレッドの再利用の概念を導入して、操作効率を向上させ、リソースを節約します。 Executor はスレッドの継続実行を制御します。簡単に言うと、Thread の run メソッド内に無限ループ while(true) {} があるため、Executor が保持する Thread は実行され続け、停止しません。 shutdown メソッドを使用すると、Executor がその下位の Thread にループから抜け出してスレッドを停止するように指示できます。もちろん、Thread には shutdown のようなメソッドはありません。多くのプログラムでは実行を継続するためにスレッドが必要であり、この時点で Thread を継承してカプセル化する場合は、スレッド exit メソッドを自分で実装する必要があります。
Thread
Executor
Java
run
while(true) {}
shutdown
Java が main を返す問題については、void の C は、当時はまだ比較的古いプログラムだと思います。ユーザーにプログラムが正常に実行されているかどうかを伝えるには戻り値に依存する必要があり、main にはサウンド例外メカニズムがあり、プログラムはコンソールを直接制御しないため、戻り値がある場合でも、 Java プログラムではなく、Java Runtime によって実行されます。 Java
main
void
C
Java Runtime
Thread
とExecutor
は矛盾しています。Thread
はプログラム内の実際のスレッドを表すJava
に属する基本構造であり、そのrun
メソッドはスレッドの実行プロセスです。Executor
はThread
上にカプセル化されており、スレッド プールとスレッドの再利用の概念を導入して、操作効率を向上させ、リソースを節約します。Executor
はスレッドの継続実行を制御します。簡単に言うと、Thread
のrun
メソッド内に無限ループwhile(true) {}
があるため、Executor
が保持するThread
は実行され続け、停止しません。shutdown
メソッドを使用すると、Executor
がその下位のThread
にループから抜け出してスレッドを停止するように指示できます。もちろん、Thread
にはshutdown
のようなメソッドはありません。多くのプログラムでは実行を継続するためにスレッドが必要であり、この時点でThread
を継承してカプセル化する場合は、スレッド exit メソッドを自分で実装する必要があります。Java
がmain
を返す問題については、void
のC
は、当時はまだ比較的古いプログラムだと思います。ユーザーにプログラムが正常に実行されているかどうかを伝えるには戻り値に依存する必要があり、main
にはサウンド例外メカニズムがあり、プログラムはコンソールを直接制御しないため、戻り値がある場合でも、Java
プログラムではなく、Java Runtime
によって実行されます。Java