ReadMeファイル:追加または説明とブラケット、。
マルチスレッドと並行性の高いポスト卒業の就職の面接ではそう、彼女の前に、面接の前に落ち着かなかった、当時の他のすべての期間は忘れて、常にちょうど背中合わせに質問に直面して、関連する知識に行き、知識のメーカーを聞いてきます彼自身は、関連する知識・ポイントの下にまとめました。
マルチスレッド
1.プロセスとスレッドの違いは何ですか?
プロセスは、それがプログラムまたはアプリケーションとして見ることができる、独立した動作環境です。スレッドは、プロセスで行われる作業です。プロセス・オペレーティング・システムは、リソース割り当ての基本単位であり、スレッドは、オペレーティング・システム・スケジューリングの基本単位です。可能なオペレーティングシステムの同時プロセスをしてみましょう、と同時スレッドの内部プロセスを可能にしましょう。Javaランタイム環境と同じように(別のクラスやプログラムを含む)単一のプロセスです。
より深く理解したい、をクリックしてくださいプロセスとスレッドの違い
2. Threadクラス開始()とrun()メソッドの違いは何ですか?
1) [スタート]() 、新しいスレッドを開始するために使用される)を実行し、(することはできません。
2)()スタート)缶(実行、繰り返し呼び出すことはできません。
3)スタート()を直接呼び出された場合RUNコードは、次のコードを、そのスレッド変換を実行した後に実行を継続することはできません)(実行次のコードを続行するために、そのコードのすべての実装が完了するのを待たなければなりません。
4)開始()マルチスレッド達成するために、実行()はマルチスレッドではありません。
マルチスレッドで、[コンテキストスイッチは何ですか?
コンテキストスイッチは、保存および復元することであるCPUのプロセスの状態、中断ポイントから実行を再開することが可能であるように、実行のスレッド。これは、マルチタスク・オペレーティング・システムとマルチスレッド環境の基本的な機能です。
volatile変数で何4. Javaの?
揮発性は、特別な修飾子唯一のメンバ変数である(クラスのメンバ変数、静的メンバ変数のクラス)、それを使用するために。
される揮発性その後、意味論の二つの層を有するように変更:
1 )この可変動作時に別のスレッドの視認性を確保するために(すなわち、1つのスレッドが変数の値を変更し、他のスレッドにこの新しい値が直ちに表示されています)。
2 )禁止命令の並べ替え。