atomic

    0

    1答えて

    私は、タイムスタンプを保持するカスタム文字列フィールドをSolrに持っています。私はこのフィールドを原子的更新によって持ついくつかのドキュメントを更新します。例: {id:doc1, last_interact:{set:8888} } ここで、doc1が存在し、last_interactフィールドにはすでに値が設定されているとします。 原子の更新は、新しい値が既存の値よりも大きい場合にのみ発

    0

    1答えて

    Mavenでのテスト中にpublic static AtomicBoolean変数がfalseになるのはなぜですか? おそらく、並行処理の間違いが間違っていますか? しかし、Intellijでは問題なく動作します。 public class MaintenanceFilterTest { @Rule public ExpectedException expectedException = Ex

    1

    1答えて

    ここ は、FacebookのフォリーライブラリからAccessSpreaderのためのコードです: https://github.com/facebook/folly/blob/master/folly/concurrency/CacheLocality.h#L212 /// AccessSpreader arranges access to a striped data structure in

    0

    1答えて

    非常に単純なメモリプールで作業しており、解決できなかった非常に興味深いバグを発見しました。 アルゴリズムの考え方は次のとおりです。「利用可能な」メモリチャンクのスタックがあるため、各チャンクは次の利用可能なチャンクへのポインタを持ちます。二次的なデータ構造を避けるために、この同じメモリチャンクを使用してポインタを格納することにしました。したがって、次の利用可能なチャンクは、このチャンクを逆参照する

    0

    2答えて

    変数にアトミックまたは非アトミックにアクセスすることがあります。 int var = 0; var++; atomic_fetch_add(&var, 1); しかし、これが打ち鳴らす4.0.1でコンパイルされません: error: address argument to atomic operation must be a pointer to _Atomic type ('int *'

    2

    1答えて

    私が原子を意味するのは成功か失敗か何もしません。複数のプロセス/スレッドがwrite(fd, buf, len)を呼び出す場合、私は知っているsocketpair(AF_LOCAL, SOCK_STREAM) は、アトミックではない、write()の戻り値は多分> 0 && < lenと秩序の外にデータを引き起こします。 socketpair(AF_LOCAL, SOCK_SEQPACKET)によ

    0

    2答えて

    I 含む種々の数(非繰り返し)(リスト、ソートセット、多分単純な文字列をすることができる)何かを持っている必要があり、私は、例えば、いくつかの を切り替えできるようにする必要があります LRANGE todo:20 0 -1 => "2" "5" "6" "7" 私のスイッチを行う:すなわち MULTI LRANGE todo:20 0 1 => "2" "5" (store them)

    -1

    1答えて

    リクエスト数を記録するコードを書いています。 package main import ( "log" "net/http" "runtime" "sync/atomic" ) var count int32 = 0 func test(w http.ResponseWriter, r *http.Request) { count = a

    0

    1答えて

    変数valAとvalBの同期をThreadMethodOneのロード時に緩和する最も正しい方法は何ですか(valAとvalBの誤ったキャッシュライン共有がないと仮定します)? valB.loadのmemory_order_acquireはvalB.loadの後にvalAを移動しないように保護していないため、コンパイラはvalB.loadの後にvalA.loadを移動できるため、memory_ord