.NETで固定サイズのThreadPoolを作成したい - デフォルトサイズが25であることを理解していますが、別のサイズを使用したいと思います。 5または10.誰でも?.NETで固定サイズのThreadPoolを作成するにはどうすればよいですか?
答えて
スレッドプールのサイズを変更する場合は注意が必要です。 固定システムスレッドプールがあり、あらゆる種類のものが使用します。それを小さすぎると、使用していないと思われる領域に問題が発生する可能性があります。
特定のタスクに対してスレッドプールを比較的小さくしたい場合は、別のプールを使用する必要があります。利用可能なサードパーティーのプールは数多くあります。私はかなり古いものをMiscUtilの一部として持っていますが、単純なユースケースには十分に適しているはずです。あなたが見ていると、より高度なものを見つけることができると確信しています。
フレームワークにはまだインスタンス化可能なThreadPool
が存在しないことは残念です。 Parallel Extensionsが効果的に1つを提供するかどうかはわかりませんが、私はそうではありませんはと考えています。
ThreadPool.SetMaxThreads()
別の非静的な方法はありますか?これで、すべてのThreadPoolsがサイズを決めるわけではありません - 私は、ThreadPoolの単一のインスタンスに特定のサイズを持たせたいだけです。 – DLauer
プロセスごとに1つのBCL ThreadPoolしかありません。あなたのシナリオだけでスレッドプールが必要な場合は、サードパーティのライブラリを見つける必要があります。 –
これはおそらく、実行時には実行できないことに注意する価値があります。もちろん、スレッド内の例外は1.1でメモリ破損の原因となる可能性があるので、使用しないでください。 – quillbreaker
ThreadPool.SetMaxThreads(5,5)5つのスレッドを超えるものはキューに入れられます。
ThreadPool.SetMaxThreads()メソッドが必要です。
ThreadPool.SetMinThreadsとThreadPool.SetMaxThreadsを使用して、スレッドプール内のスレッド数を制御できます。
言われているように、私はこれを慎重に使用することをお勧めします。 BCLの多くの操作では、スレッドプールスレッドが使用可能であるため、トラブルに陥るのは簡単です。
- 1. .NETでダイアグラムアプリケーションを作成するにはどうすればよいですか?
- 2. テーブルの列の幅をHTMLで固定サイズに指定するにはどうすればよいですか?
- 3. graphvizに固定サイズの部分グラフを生成させるにはどうすればよいですか?
- 4. cssで固定の縦と横のテーブルを作成するにはどうすればよいですか?
- 5. C#で固定長バイト配列のユーザータイプを作成するにはどうすればよいですか?
- 6. Android XMLで固定高さの縦線を作成するにはどうすればよいですか?
- 7. 固定幅とフレックス幅の列でExtJsダッシュボードを作成するにはどうすればよいですか?
- 8. ビン幅を固定し、ヒストグラムをパーセンテージで作成するにはどうすればよいですか?
- 9. 固定サイズの配列を定義するにはどうすればよいですか?
- 10. ブートストラップで固定高さパネルを作成するにはどうすればよいですか?
- 11. Androidで固定サイズのスクロールバーをスクロールするにはどうすればよいですか?
- 12. Scalaで固定サイズのリストを実装するにはどうすればよいですか?
- 13. リストのリストを固定サイズのマトリックスに変換するにはどうすればよいですか?
- 14. バナーと同じ背景の固定ヘッダーを作成するにはどうすればよいですか?
- 15. Pythonで固定サイズの書式設定された文字列を作成するにはどうすればよいですか?
- 16. ブートストラップ応答テーブルの固定サイズを1行に保持するにはどうすればよいですか?
- 17. 特定のサイズのSQL Server Geographyポリゴンを作成するにはどうすればよいですか?
- 18. 特定のサイズのlinkedListを作成するにはどうすればよいですか?
- 19. HTML電子メール署名の固定サイズを維持するにはどうすればよいですか?
- 20. 空の場合でもグリッドビューのサイズを固定するにはどうすればいいですか?
- 21. pythonで固定サイズのリストを作成するには? C++で
- 22. スクロールバー(オーバーフロー時)と固定フッターの下にオートハイトコンテンツを作成するにはどうすればいいですか?
- 23. 特定の列サイズのdiv内でhtmlスクロールテーブルを作成するにはどうすればいいですか?
- 24. .NETでは、Symlinkではなく、NTFSでジャンクションを作成するにはどうすればよいですか?
- 25. 各ファセットに固有のタイトルとサブタイトルでファセットプロットを作成するにはどうすればよいですか?
- 26. プラットフォーム固有のRelativeLayout.XConstraintをXAMLで作成するにはどうすればよいですか?
- 27. Pusherでユーザー固有のチャンネルを作成するにはどうすればよいですか?
- 28. Google App Engineでユーザー固有のサブドメインを作成するにはどうすればよいですか?
- 29. ウェブサービスアプリの作成にはどうすればよいですか?
- 30. Android Studioの各ビルドに固有の変数を作成するにはどうすればよいですか?
.NET 4.0のParallel Extensionsは、基本クラスライブラリの標準ThreadPoolを実際に使用します。彼らは自分自身を提供しません。 (BCL ThreadPoolクラスは、.NET 4で改良され、並列拡張を効率的に稼働させるために必要な多くの機能を追加しました。例えば、.NET 3.5よりはるかに優れたスケジューラを持っていますThreadPool) –
@Reed:うん、私はシステムスレッドプールを使ってPFXの通常のビットを知っていた...私も作成することができる新しいものがあったかどうかは確かではなかった。まぁ。 –