この記事は機械翻訳のミラー記事です。元の記事にジャンプするにはこちらをクリックしてください。

眺める: 60677|答える: 4

[出典] .NET/C# は BlockingCollection バックグラウンドタスクキューに基づいています

[リンクをコピー]
2021年1月23日 11:53:25に投稿 | | | |
c#はユニバーサルQueueHelperキューをカプセル化しています
https://www.itsvse.com/thread-5029-1-1.html
.NET/C#はBlockingCollectionに基づくシンプルなログを実装しています
https://www.itsvse.com/thread-9512-1-1.html
シナリオ:特定の操作を行う際にメッセージを返す必要がなく、バックグラウンドで処理可能な関数をバックグラウンドの任意の部分に配置して実行することができます。 例えば、メールの送信やログの作成などです。

以前、ConcurrentQueueとThreadに基づくタスクキューについて書いていますが、この記事ではBlockingCollectionを使ってより良く実現しています。

QueueBlockingCollectionのコードは以下の通りです:

例えば、QueueBlockingCollection抽象クラスを継承するメッセージを送信するバックグラウンドタスクを実装してみましょう。

呼び出しメソッドは以下の通りです:


シンプルなコンソールの背景出力文字列で、コードは以下の通りです:

レンダリングは以下の通りです:



(終わり)




先の:ASP.NET CoreはオブジェクトにシリアライズできないPOST JSONパラメータを受け取ります
次に:.net/c#はCPUプロセッサ使用率を100%可能にします
 地主| 2021年6月11日 15:05:55に投稿 |
コードは少し問題があり、最新のコードは以下の通りです:


2023年4月10日 17:35:55に投稿 |
ちょっと見てみるよ
2023年5月8日 09:58:53に投稿 |
消費者は以下のコードを通じてメッセージを受け取ることも可能です:

 地主| 2023年5月8日 22:13:24に投稿 |
.NET Coreの高性能キューチャネルが使用されています
https://www.itsvse.com/thread-10584-1-1.html
免責事項:
Code Farmer Networkが発行するすべてのソフトウェア、プログラミング資料、記事は学習および研究目的のみを目的としています。 上記の内容は商業的または違法な目的で使用されてはならず、そうでなければ利用者はすべての結果を負うことになります。 このサイトの情報はインターネットからのものであり、著作権紛争はこのサイトとは関係ありません。 ダウンロード後24時間以内に上記の内容を完全にパソコンから削除してください。 もしこのプログラムを気に入ったら、正規のソフトウェアを支持し、登録を購入し、より良い本物のサービスを受けてください。 もし侵害があれば、メールでご連絡ください。

Mail To:help@itsvse.com