問題タブ [pool]

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.

0 投票する
1 に答える
1748 参照

c++ - クラスでブースト メモリ プールを使用する

クラスでメモリ プールを宣言しようとしました。

しかし、コンパイラは、';' の前に ')' がないなどの基本的なエラーを示します。

または構文エラー: 'sizeof'

プールをローカル変数として使用した場合はうまく機能しますが、実際にはクラスで使用したいと考えています。

私の使用法について何が問題になっていますか?

これがクラスです。MAX_OBJ は const です

0 投票する
1 に答える
724 参照

c++ - 非const参照をctorパラメーターとして使用してboost::object_pool <> ::constructを使用する方法は?

非const参照でboost::object_pool <> ::constructを使用することはどういうわけか可能ですか?

次のスニペットはコンパイルされません(VS2010)。

VS2010は、bar&をconst bar&に変換できないことについて文句を言います。boost :: object_pool <> ::を見ると、理由が明確ではありません。

ただし、ctorパラメーターをconstにすることはできません。boost :: object_pool <>を私のfooクラスで機能させるためのトリックはありますか?

0 投票する
2 に答える
3390 参照

wcf - ApplicationPoolをリサイクルした後、IISでホストされているWCFサービスを「ウォームアップ」(キャッシュを埋めるなど)するにはどうすればよいですか?

IIS 6内でWCFサービスをホストしています。ServiceHostFactoryは、サービスへの最初の要求が表示されたときにServiceHostを作成します。ServiceHostのOnOpening()メソッドでは、静的プロパティとして実装されたキャッシュにデータをロードします。

データのロードには約1分かかるため、「その日の最初のユーザー」がキャッシュがいっぱいになるのを待たないようにします。問題は、ApplicationPoolをリサイクルするたびに、ServiceHost、つまりキャッシュが強制終了されることです。リサイクルを検出してキャッシュを補充する可能性はありますか?または、他のベストプラクティスはありますか?この問題を抱えているのは私たちだけだとは信じられません...

前もって感謝します!

0 投票する
1 に答える
1061 参照

apache - Apache スレッドの apr_pool_destroy() は安全ですか?

私のアプリケーションは Apache で構築され、Windows 上で実行されます。createThread() を使用してスレッドを作成し、次に以下を実行するスレッドごとに:

ap_destroy_sub_request は、apr_pool_destroy() 関数を呼び出します。

ap_run_sub_req() はプール用に割り当てられたメモリを使用し、ap_destroy_sub_req() は割り当てられたメモリを解放します。

apr_pool_destroy() がスレッド内で呼び出された場合、割り当てられたメモリが解放されないため、アプリケーションでメモリ リークが発生します。apr_pool_destroy() が非スレッドセーフ関数であるという言及は、どのApacheドキュメントにも見つかりませんでした。

この問題はどのように解決できますか?? スレッド内で割り当てられたプールを解放するにはどうすればよいですか?
ありがとう

0 投票する
1 に答える
1438 参照

python - Pythonスレッドプールの問題(何かを待つ)

スレッドプールを使用して簡単な Web サイト クローラーを作成しました。問題は次のとおりです。クローラーはサイト全体に渡って終了する必要がありますが、実際には最後に何かを待ち、スクリプトは終了しません。なぜこれが起こったのですか?

0 投票する
2 に答える
1139 参照

python - 批判このpythonコード(スレッドプール付きのクローラー)

このpythonコードはどれくらい良いですか?批判が必要です) このコードにはエラーがあり、スクリプトが "ALL WAIT - CAN FINISH!" を出力することがあります。フリーズします(これ以上アクションは発生しません..)が、これが発生した理由がわかりませんか?

スレッドプールを使用したサイト クローラー:

助けてくれてありがとう!私は新しい実装を行います: このコードについて何が言えますか? =================================トライ #2============ ==========================

0 投票する
3 に答える
930 参照

java - 強力な参照が存在する場合に既存のオブジェクトを返すことが保証されたスレッドセーフなオブジェクトプール?

Clojure言語を拡張して、ACI保証の参照をACID保証のdref(耐久性のある参照)に拡張しようとしています。APIは、単純にを呼び出すためのものです(dref key value)。ここでkey、は基になるデータストア(現在の実装ではBDB JE)で使用されるキーの文字列でありvalue、drefを初期化する必要があるオブジェクトです。keyDBにすでに存在する場合は、代わりに保存された値が使用されます。

同じキーで複数のdrefを作成でき、それらを同期する必要があります。つまり、キー「A」を持つ1つのdrefが、キー「A」で書き込まれたり読み取られたりするトランザクションに参加する場合、(ensure)キー「A」を持つ他のすべてのdrefはトランザクションである必要があります。同期:読み取りロックと書き込みロックを使用して、これらのdrefを含むトランザクションに順序を付ける必要があります。より広い意味では、同じキーを持つ複数のメモリ内drefが存在する場合がありますが、そのキーを持つすべてのdrefは単一の論理オブジェクトです。

明らかな理由から、この単一の論理drefが単一の具象インメモリdrefで実装されていることを確認する方がはるかに簡単です。そうすれば、同期するものは何もありません。どうすればよいですか?

明白な答えは、keyにキー設定されたオブジェクトプールを使用することです。次に、Clojureは静的getInstance(key,value)メソッドを呼び出して、存在する場合はプールから取得し、存在しない場合は作成してプールにデータを入力します。このアプローチの問題は、完了時にClojureにオブジェクトを解放させる簡単な方法がないことです。メモリリークのある都市。強い参照を持つオブジェクトが収集されないようにし、それらがプールに存在するようにする必要があります。別のプロセスが同じキーを持つ新しいdrefを作成する可能性があり、同じキーを持つ他のdrefとのトランザクションの安全性がないため、プールがまだ使用されている論理drefへの参照を失うと悲惨なことになります。

そのため、強くない参照を使用したバージョンWeakHashMapまたは何かが必要です(SoftReferenceGCでもう少し気が進まない場合は、を使用することをお勧めします)。それで:

  1. を使用するHashMap<String,SoftReference<DRef>>場合、エントリの値(SoftReference)が収集された場合に、マップがエントリを削除するようにするにはどうすればよいですか?ある種のデーモンスレッド?
  2. GCのプールをスレッドセーフにするにはどうすればよいですか?SoftReferenceまたは、GCがレベルで動作していて、デーモンスレッドがそのレベルで動作しているので、それについて心配する必要はありませんMapか?
  3. 関連するメモとして、デーモンスレッドが実行されていることを確認するにはどうすればよいですか?キャッチされない場合にJVM全体をクラッシュさせる例外をスローせずに停止できる方法はありますか?その場合、必要に応じて新しいものを監視して開始するにはどうすればよいですか?
0 投票する
1 に答える
598 参照

c++ - C ++で抽象基本クラスのプールアロケータを作成するには?

glibc の malloc() でバグに遭遇しました: http://sourceware.org/bugzilla/show_bug.cgi?id=4349 glibc の新しいバージョンに更新するまでの間、回避策を考えています。多くのインスタンスが行き来するオブジェクト。

小さなオブジェクトはすべて、抽象基本クラスから派生しています。基本クラスでプール割り当てを自動的に提供し、多くの派生クラスで適切に機能させるための適切なパターン (boost の使用は問題ありません) を見つけたいと思います。

これは、抽象基本クラスで演算子 new() を定義することによって行われますか? 実際のメモリ サイズが異なる可能性がある派生クラスごとに異なるプールを構成するにはどうすればよいでしょうか。

0 投票する
1 に答える
18034 参照

python - Pool.imap によって呼び出される関数でマルチプロセッシング キューを使用できますか?

私はpython 2.7を使用しており、独自のプロセスでCPUの重いタスクを実行しようとしています。親プロセスにメッセージを送り返して、プロセスの現在のステータスを通知できるようにしたいと考えています。multiprocessing Queue はこれに最適なようですが、それを機能させる方法がわかりません。

したがって、これは私の基本的な作業例からキューの使用を除いたものです。

いくつかの方法でキューを渡そうとしましたが、「RuntimeError: キュー オブジェクトは継承によってプロセス間でのみ共有する必要があります」というエラー メッセージが表示されます。これは、私が見つけた以前の回答に基づいて試した方法の1つです。(Pool.map_async と Pool.imap を使用しようとすると同じ問題が発生します)

最後に、0 フィットネス アプローチ (グローバルにする) はメッセージを生成せず、ロックアップするだけです。

おそらく multiprocessing.Process で直接動作し、これを達成するための他のライブラリがあることは承知していますが、自分の不足だけではないことを確認するまで、最適な標準ライブラリ関数から離れることは嫌いです私がそれらを悪用することを妨げている知識の。

ありがとう。

0 投票する
2 に答える
1303 参照

java - ワーカー プールを使用した HTTP 要求キュー

HTTPプロトコルを介して異なるWebサーバーに接続するJavaでアプリケーションを開発しています(要求を送信して応答を待ちます)。キューとワーカープールでパターンを使用したいので、Java にこのためのメソッドを提供するフレームワークがあるかどうかを知りたいですか?