開発 スレッド同期とは何ですか? -techopediaからの定義

スレッド同期とは何ですか? -techopediaからの定義

目次:

Anonim

定義-スレッド同期とはどういう意味ですか?

スレッド同期は、重要なリソースを共有する2つ以上のスレッドの同時実行です。 重要なリソース使用の競合を回避するために、スレッドを同期する必要があります。 そうしないと、並列実行スレッドが共通変数を同時に変更しようとしたときに競合が発生する可能性があります。

Techopediaはスレッドの同期を説明します

スレッドの同期を明確にするために、次の例を考慮してください:3つのスレッド-A、B、およびC-が同時に実行され、重要なリソースZにアクセスする必要があります。 。 したがって、AがZにアクセスし、BもZにアクセスしようとすると、Aが操作を終了してZから出るまで、BのZへのアクセスをセキュリティ対策で回避する必要があります。


Javaでは、スレッドの干渉とメモリの一貫性エラーを防ぐために2つの同期戦略が使用されます。

  • Synchronizedメソッド:宣言にsynchronizedキーワードを含めます。 スレッドが同期メソッドを呼び出すと、同期メソッドは自動的にそのメソッドのオブジェクトの固有ロックを取得し、メソッドが戻るときに、その戻りがキャッチされなかった例外によって引き起こされた場合でも解放します。
  • 同期ステートメント:同期するコードのブロックを宣言します。 同期メソッドとは異なり、同期ステートメントでは、固有のロックを提供するオブジェクトを指定する必要があります。 これらのステートメントは、不必要なブロックを回避できるため、きめの細かい同期で並行性を改善するのに役立ちます。

スレッド同期とは何ですか? -techopediaからの定義