この1人の十分な友人は、マルチスレッドの基礎を学びます!(A):https://blog.csdn.net/weixin_43827227/article/details/96606212
この1人の十分な友人は、マルチスレッドの基礎を学びます!(B):https://blog.csdn.net/weixin_43827227/article/details/96982701
マルチスレッド概要:
1、プロセスとスレッドの概念。
| -プロセス:
| - スレッド:
図2に示すように、マルチスレッドのJVMが反射されます。
| -メインスレッド、スレッドのガベージコレクション、カスタムスレッド。そして、彼らは実行コードの位置。
3、マルチスレッドを使用した場合、マルチスレッド、それは何が良いのですか?スレッドに作成されましたか?
| -マルチパートのコードの必要性が同時に実行されると、それは使用することができます。
4、スレッドを作成するには、2つの方法が。★★★★★
| -継承されたスレッド
| - ステップ
| - Runnableを実装します
| - ステップ
| - 二つのアプローチの違いは?
5、糸の5状態。
右の資格の特定の実行および実装のための状態にしています。
| - 作成されました:
| - 実行します:
| - 凍結:
| - 一時的にブロック:
| - 終焉:
6、セキュリティスレッド。★★★★★
| -安全上の理由:
| - アイデアを解決します:
| - 解決反映:同期
| - 前提を同期:だけでなく、同期のセキュリティ問題で、我々は前提に考える必要があります。
| - 同期方法と二つの形式の違い:
| - 利点と欠点の同期:
| - 怠惰な単一の例。
| - デッドロック。
図7に示すように、スレッド間の通信。/ウェイクアップメカニズムを待ちます。
| -コンセプト:様々なタスクの複数のスレッド、同じリソースとの契約。
| - 待機ウェイクアップ機構。ロック待機のnotifyAllを通知を使用します。★★★★★
| - 質問プロデューサー/消費者。そして、より多くの生産と消費の問題以上。決意フラグつつ。ウェイクアップのnotifyAllでお互いを。★★★★★
| --JDK1.5がより良いソリューションが登場した後、★★★
同期インタフェースの置き換えをロック
条件オブジェクト、モニタを監視する別の方法インターフェイスおよび状態の方法で包装
その差は、以前ロックはモニタメソッドを持つことができます設定されています。さて、ロックオブジェクトのモニタ方法の複数のセットをロックすることができます。
あなたは責任プロデューサー、責任ある消費者のグループを実装することができます。
違い--waitと睡眠|。★★★★★
8、スレッドの道を停止します。
| -原理:
| - パフォーマンス: - 割り込み。
9、いくつかの方法の一般的なスレッド。
| --setDaemon()デーモンスレッド
| --join();
| - 優先順位
| --yield();
| - 開発で、あなたは部分パスのオープンを完了するために、匿名の内部クラスを使用することができます。