interlocked

    0

    1答えて

    私の質問はとても簡単です。 なぜインターロックされたマルチスレッドのインクリメントが1スレッドよりも遅いのですか? キャッシュラインバウンシング(キャッシュライン競合)のためだけですか? また別の理由がありますか? 私はIntel i7、visual studio 2012を使用しています。 インターロック付きインクリメント機能を使用してカウント数をテストしました。テスト結果はそれでした。 1スレ

    3

    1答えて

    私は、多くのスレッドが0にアクセスできる(同時に共有リソースなし)という機能を持っています(関数Aと呼ぶことができます)。いつでも、ユーザーはプロセスを停止するために使用できます。停止機能は、正常なシャットダウンを実行できるように、機能Aにアクセスするスレッドが存在することを確認する必要があります。そうするネイティブな手順はありますか? 私がしようとしていたのは、関数Aが呼び出されるたびに(関数A

    0

    1答えて

    C++でアトミックを使用する場合、ポインタの未使用アドレスビットに他の変数をパックすることができます。私はポインタと一緒に原子、フラグ、カウンタなどを変更することができます。 C#では、これほど簡単ではありません。私は特別なことを意味する静的な参照を使用することができると思うが、ヒープを圧縮するときに参照を移動することについて少し気になります。たとえば、このサンプルコードでは、静的な参照s_can

    0

    1答えて

    設定は以下のとおりです:DI用にAutoFacを使用するAsp.NET + MVC5。 私たちは、さまざまなサービスのためのアクセストークンを管理しているクラス(シングルトン)を持っています。今や、これらのトークンは満期に近づきすぎて(10分未満)、新しいトークンを要求し、それらをリフレッシュします。あなたはインターロックは、必ず1つのスレッドだけを通過し、残りは古いトークンを取得します見ることが

    -1

    1答えて

    免責事項:私のC#は私のC++ほど良くはありません 私のコンポーネントのテストアプリケーションを書くために、C#で非同期ソケットを行う方法を学びたいと思っています。れるtcpClientを使用して私のかつての試みは失敗に終わったとあなたはここでその上の優れた質問を読むことができます:私はその作業を取得できませんでした TcpClient.NetworkStream Async operations

    0

    4答えて

    私はそうのように、int型から継承する列挙型でInterlocked.CompareExchangeを使用したい: public enum MyEnum : int { A, B } public class MyClass { private static readonly MyEnum s_field = MyEnum.A; public void Foo()

    1

    3答えて

    クロスプロセスカウンタが必要です。メモリマップされたファイルの整数をマップしてInterlocked.Incrementを使用することもできますが、Semaphore.Releaseはプログラミングオーバーヘッドが少なくて済みます。例: var mySem = new Semaphore(0, int.MaxValue, "mySemName"); // Get the next number

    0

    1答えて

    ガイド"Using Singly Linked Lists"は_aligned_mallocを使用して、​​を呼び出す前にSLIST_HEADER構造体を割り当てます。リストヘッダー構造がヒープ上に置かれる必要がありますか?つまり、それはDECLSPEC_ALIGN(16)(Win64上)と宣言されています。コンパイラはそれを16バイトの境界に配置しますか?

    0

    2答えて

    普通のオブジェクトでInterlocked.CompareExchange()を使用することに慣れています。しかし、私は、アレイのメンバーとそれを使用したい: string[] myArray = new string[] { "A", "B", "C" }; string myStr = (string) Interlocked.CompareExchange(ref myArray[0],

    0

    1答えて

    私はWinAPI InterlockedPushEntrySList をテストしていますが、私のテスト結果はちょっと変わっています。 私は基本的にLockFreeで考えていましたが、プッシュ速度はスレッドが増えるほど速くなります。 1つのスレッドが少なくとも成功するためです。スレッドとしての私のテストで InterlockedPushEntrySListの速度が遅くなります。 私のテストは非常に簡