問題タブ [object-pooling]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
c++ - オープン ソースのスレッド セーフな C++ オブジェクト プールの実装はありますか?
複数のワーカー スレッドに提供されるソケット接続のプールを作成する必要があります。Apache Commons と同様の機能を備えたスレッド セーフなオブジェクト プールの実装はありますGenericObjectPool
か?
c# - メソッドを再帰的に呼び出す(オブジェクトの再利用を目的として)
重複の可能性:
メソッドを再帰的に呼び出す(オブジェクトの再利用を目的として)
たくさんのフィールド(10+)、巨大な配列(100kb)、および長時間実行されるタスクを処理するいくつかのアンマネージリソースを含むかなり大きなクラスがあり、タスクが完了するたびに何度も再利用したいと考えています。以下のコードは状況を示しています。
ここでの問題は、すべてのタスクが完了した後、DoWorkが戻らないことです。これにより、ある時点以降にストックオーバーフローが発生します。ThreadPoolでOnCompleteの呼び出しをキューに入れて、DoWorkを返させ、ランタイムに呼び出しスタックをクリアさせることができますが、余分なリソースを使用したくありません。私にとって最良の選択肢は何でしょうか?(タスクの進行が線形であると仮定します)(DoWorkは別のスレッドで実行する必要があります)
actionscript-3 - リスト内の複合型を見つけるための最速の方法(ベクトル、配列、辞書、より高速なもの)
あられ、スタック!
複雑なタイプ(オブジェクトとスプライトの拡張)のリスト(ベクトル、配列、辞書など、より高速なもの)内のアイテムを見つけるための最良の方法を知る必要があります。
「NeedleinHaystack」方式を使用しましたが、十分な速度ではないようです。
たとえば、スプライトのコレクション(実際にはプール)があるとします。
各スプライトはステージに追加され、いくつかのアクションを実行します。その後、それは死ぬでしょう。
私はそれを処分する(ガベージコレクション)と毎回別の(新しい)ものを作成するためのコストを払いたくないので、死んだスプライトをコレクションに保持します。
時々、ステージにスプライトを追加するメソッドを呼び出すことがあります。
このスプライトは、すでに死んでいる場合は古いスプライトにすることができ、プールに空きスプライトがない場合は新しいスプライトにすることができます。
この質問に私を駆り立てたシナリオの1つは、パーティクルシステムでした。
フレームごとにパーティクルの「トレイル」を残し、派手な多数のパーティクルに爆発する「ヘッド」パーティクル...すべてのフレーム...
モーション、回転、アルファ、イベントディスパッチ、スケールなどで最大50.000 PNGをカウントすることもあります
が、これは1つのシナリオです...
現時点では、リンクリスト付きのオブジェクトプールを使用しようとしています...
配列/ベクトル全体を実行したり、フレームごとに新しいインスタンスを作成してガベージコレクションで染色したりするよりも高速になることを願っています。
誰かがそれを行うためのより良い/より速い方法を知っていますか?
c# - C#で再利用可能なオブジェクトプールを実装するにはどうすればよいですか?
ストリーミングソケットから大量のデータを処理しています。データは使用され、GCがクリーンアップするために残されます。再利用可能なプールを事前に割り当てて再利用し、GCが大量に発生しないようにします。
誰か助けてもらえますか?
php - PHP プーリング機能 (データベース接続だけでなく)
PHP でデータや機能をプールすることは可能ですか?
私が書いたアマチュアっぽい PHP コードは、ウェイクアップして応答を処理し、関数をロードし、データベース接続を開き、オブジェクトを作成し、それらを初期化し、応答が処理されてから 0.01 秒後に終了し、次の要求をリロードします。解析し、主に同じことを再度実行します。
それは無意味であり、機能/データ/オブジェクトのプーリングを持たないことは、私の多くの仕事の価値を奪うことに気づきました。たとえば、クラスを作成して、リクエストごとにすべてが再初期化されることを確認できます。意味のあるオブジェクト構造を開発しようとする意味は何ですか?
では、PHP を作成してデータと機能をプールするにはどうすればよいでしょうか。
java - JavaまたはEJBのプーリングの概念?
ステートレスEJBにはプーリングの概念があります。プーリングを使用する利点は何ですか?私の理解では、オブジェクトの作成にかかる時間を節約できます。これは正しいですか?はいの場合、オブジェクトの作成または既存のプールからの取得のパフォーマンスに大きな違いはありますか?プーリングはこれ以外の目的を果たしますか?
java - Memcached でのプーリングに関するヘルプが必要
複数のサーバーで Web アプリケーションを実行しています。また、spymemcached をクライアントとして、このアプリに Memcached を実装する予定です。memcached クライアントのプールを作成しました。しかし、プールから借用しているクライアントが memcached サーバーへの複数の接続を作成できるかどうかはわかりません。
クライアント プールのクライアントが使用できる接続のプールが必要です。この方法で問題ない場合、実装をどのように進める必要がありますか? または、最善の方法は何ですか?
boost - calloc に代わるブーストプール
全て、
ブースト プール ライブラリを使用する場合、次のステートメントをどのように置き換えますか。
1 つの要素の場合は、次のようにします。
しかし、「numOfElements」は変数なので、malloc() のループを実行するのは得策ではないのでしょうか?
java - Java Web アプリケーションで Web サービス呼び出しを調整する方法
私の要件は非常に理解しやすいものです。
1 分あたり最大 10 回の Web サービス呼び出しに制限して、Java Web アプリケーションから Web サービスを呼び出したいと考えています。1 分後、前の 10 回の Web サービス呼び出しの状態 (完了または未完了) に関係なく、別の 10 回の接続を確立できます。
誰かがこれを実装するためのアプローチを教えてくれますか? チュートリアルや役立つリンクはありますか?
actionscript-3 - 効果音用のAS3オブジェクトプール
私はトップハンドルが必要なゲームを構築しています。たくさんの効果音があります。エフェクトを再利用できるように、エフェクトのオブジェクトプールを作成しました。私の問題は、サウンドタイプごとにプールを作成せずに、優れたプールソリューションを作成する方法です。プールのチェックアウト機能は、リストの最初のサウンドを返します。
この少し汚い解決策は、プールから借りたアイテムが私が作成したいのと同じサウンドを持っているかどうかをチェックします。同じ音なら二度と音を出さない。そうでない場合は、プールに正しいサウンドのインスタンスがあることがわかっていても、作成します。
この汚い解決策により、インスタンスは数百から約7に減少しましたが、さらに最適化できると思います。
サウンド名をチェックアウト機能に渡すことを考えていましたが、毎回プールをループする価値は本当にありますか?
何か案は?