ホームページ > バックエンド開発 > Python チュートリアル > シングルトンモードPythonの用途は何ですか

シングルトンモードPythonの用途は何ですか

爱喝马黛茶的安东尼
リリース: 2019-06-26 10:24:47
オリジナル
3558 人が閲覧しました

シングルトン モードは、シングルトン モードとも呼ばれます。デザイン パターンの中で最も単純なモードです。デザイン パターンはオブジェクトに注目するため、一部のパターン マスターでもこれをパターンとは呼ばず、実装手法と呼んでいます。関係の抽象化シングルトン パターンには独自のオブジェクトが 1 つしかないため、一部のデザイン マスターはこれをデザイン パターンの 1 つと呼んでいます。

シングルトンモードPythonの用途は何ですか

論理モデル図:

シングルトンモードPythonの用途は何ですか

##物理モデル図:

シングルトンモードPythonの用途は何ですか

シングルトンモードを使ったことがない人は、「シングルトンモードはあまり使われない」と思っているかもしれませんが、実際の利用シーンはどのようなものなのでしょうか?以下に、私たちの周りに存在する、非常に意味のあるシングルトン アプリケーションのシナリオをいくつか挙げます。

関連する推奨事項: 「

Python ビデオ チュートリアル

1. Windows のタスク マネージャー (タスク マネージャー) は、非常に典型的なシングルトン モードです。考えてみてください。それは「いいえ」です。 , ウィンドウのタスクマネージャーを2つ開くことはできますか?

2. Windows のごみ箱も典型的なシングルトン アプリケーションです。システム動作全体を通じて、ごみ箱は 1 つのインスタンスのみを維持します。

3. Web サイトのカウンターは通常、シングルトン モードで実装されますが、それ以外の場合は同期が困難になります。

4. アプリケーション ログ アプリケーションは通常、シングルトン モードで実装されます。これは通常、共有ログ ファイルを操作できるインスタンスが 1 つだけであるため、共有ログ ファイルが常に開いており、そうでない場合はコンテンツを追加することが困難であるためです。

5. Web アプリケーションの設定オブジェクトを読み取る場合は、設定ファイルが共有リソースであるため、通常はシングルトン モードが使用されます。

6. データベース接続はデータベース リソースであるため、データベース接続プールの設計では通常シングルトン モードが採用されます。データベース ソフトウェア システムでデータベース接続プールを使用する主な目的は、データベース接続の開閉によって生じる効率の損失を節約することです。メンテナンスにシングルトン モードを使用すると、この損失を大幅に削減できるため、この効率の損失は依然として非常に高くつきます。

7. マルチスレッド スレッド プールの設計では、通常、スレッド プール内のスレッドの制御を容易にする必要があるため、シングルトン モードが採用されます。

8. オペレーティング システムのファイル システムもラージ シングルトン モードの実装の具体例であり、オペレーティング システムはファイル システムを 1 つだけ持つことができます。

9. HttpApplication もユニット ケースの典型的なアプリケーションです。 ASP.Net (IIS) のリクエスト ライフ サイクル全体に精通している人は、HttpApplication もシングルトン モードであることを知っているはずです。すべての HttpModules は HttpApplication インスタンスを共有します。

上記を要約すると、次のことが難しくありません。参照:

シングルトン モードのアプリケーション シナリオは、通常、次の条件で発生します。

(1) リソース共有の場合、リソース操作などによって引き起こされるパフォーマンスや損失を回避します。上記のログ ファイルのように、構成を適用します。

(2) リソースを制御する際、リソース間の相互通信が容易になります。スレッドプールなど。

以上がシングルトンモードPythonの用途は何ですかの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート