Search Options

Results per page
Sort
Preferred Languages
Advance

Results 1 - 10 of 28 for compareAndSet (0.11 sec)

  1. guava-tests/test/com/google/common/util/concurrent/AtomicDoubleArrayTest.java

          for (double x : VALUES) {
            assertBitEquals(prev, aa.get(i));
            assertFalse(aa.compareAndSet(i, unused, x));
            assertBitEquals(prev, aa.get(i));
            assertTrue(aa.compareAndSet(i, prev, x));
            assertBitEquals(x, aa.get(i));
            prev = x;
          }
        }
      }
    
      /** compareAndSet in one thread enables another waiting for value to succeed */
    Registered: Fri Nov 01 12:43:10 UTC 2024
    - Last Modified: Thu Oct 17 02:42:09 UTC 2024
    - 14.6K bytes
    - Viewed (0)
  2. guava-tests/test/com/google/common/util/concurrent/AtomicDoubleTest.java

          assertBitEquals(x, at.doubleValue());
        }
      }
    
      /** compareAndSet treats +0.0 and -0.0 as distinct values */
      public void testDistinctZeros() {
        AtomicDouble at = new AtomicDouble(+0.0);
        assertFalse(at.compareAndSet(-0.0, 7.0));
        assertFalse(at.weakCompareAndSet(-0.0, 7.0));
        assertBitEquals(+0.0, at.get());
        assertTrue(at.compareAndSet(+0.0, -0.0));
        assertBitEquals(-0.0, at.get());
    Registered: Fri Nov 01 12:43:10 UTC 2024
    - Last Modified: Thu Oct 17 02:42:09 UTC 2024
    - 10.3K bytes
    - Viewed (0)
  3. android/guava/src/com/google/common/util/concurrent/AtomicLongMap.java

            if (oldValue == 0L) {
              // don't compareAndSet a zero
              if (map.replace(key, atomic, new AtomicLong(delta))) {
                return delta;
              }
              // atomic replaced
              continue outer;
            }
    
            long newValue = oldValue + delta;
            if (atomic.compareAndSet(oldValue, newValue)) {
              return newValue;
            }
    Registered: Fri Nov 01 12:43:10 UTC 2024
    - Last Modified: Mon Apr 01 16:15:01 UTC 2024
    - 14.1K bytes
    - Viewed (0)
  4. guava/src/com/google/common/util/concurrent/AtomicDoubleArray.java

       * @param update the new value
       * @return true if successful. False return indicates that the actual value was not equal to the
       *     expected value.
       */
      public final boolean compareAndSet(int i, double expect, double update) {
        return longs.compareAndSet(i, doubleToRawLongBits(expect), doubleToRawLongBits(update));
      }
    
      /**
       * Atomically sets the element at position {@code i} to the given updated value if the current
    Registered: Fri Nov 01 12:43:10 UTC 2024
    - Last Modified: Fri Jun 14 17:55:55 UTC 2024
    - 10.3K bytes
    - Viewed (0)
  5. guava/src/com/google/common/util/concurrent/InterruptibleTask.java

         * interrupt, yet it will still run, since interruptTask will leave the runner value null,
         * allowing the CAS below to succeed.
         */
        Thread currentThread = Thread.currentThread();
        if (!compareAndSet(null, currentThread)) {
          return; // someone else has run or is running.
        }
    
        boolean run = !isDone();
        T result = null;
        Throwable error = null;
        try {
          if (run) {
    Registered: Fri Nov 01 12:43:10 UTC 2024
    - Last Modified: Thu Oct 17 02:42:09 UTC 2024
    - 10.1K bytes
    - Viewed (0)
  6. android/guava/src/com/google/common/util/concurrent/InterruptibleTask.java

         * interrupt, yet it will still run, since interruptTask will leave the runner value null,
         * allowing the CAS below to succeed.
         */
        Thread currentThread = Thread.currentThread();
        if (!compareAndSet(null, currentThread)) {
          return; // someone else has run or is running.
        }
    
        boolean run = !isDone();
        T result = null;
        Throwable error = null;
        try {
          if (run) {
    Registered: Fri Nov 01 12:43:10 UTC 2024
    - Last Modified: Thu Oct 17 02:42:09 UTC 2024
    - 10.1K bytes
    - Viewed (0)
  7. android/guava/src/com/google/common/collect/ConcurrentHashMultiset.java

       * AtomicInteger's atomic operations, with some help from ConcurrentMap's atomic operations on
       * creation and removal (including automatic removal of zeroes). If the modification of an
       * AtomicInteger results in zero, we compareAndSet the value to zero; if that succeeds, we remove
       * the entry from the Map. If another operation sees a zero in the map, it knows that the entry is
    Registered: Fri Nov 01 12:43:10 UTC 2024
    - Last Modified: Wed Oct 30 16:15:19 UTC 2024
    - 21.1K bytes
    - Viewed (0)
  8. android/guava/src/com/google/common/util/concurrent/AggregateFutureState.java

           * other callers have added to it.
           *
           * This read is guaranteed to get us the right value because we only set this once (here).
           *
           * requireNonNull is safe because either our compareAndSet succeeded or it failed because
           * another thread did it for us.
           */
          seenExceptionsLocal = requireNonNull(seenExceptions);
        }
        return seenExceptionsLocal;
      }
    
    Registered: Fri Nov 01 12:43:10 UTC 2024
    - Last Modified: Tue May 28 20:40:51 UTC 2024
    - 8.4K bytes
    - Viewed (0)
  9. guava/src/com/google/common/util/concurrent/AggregateFutureState.java

           * other callers have added to it.
           *
           * This read is guaranteed to get us the right value because we only set this once (here).
           *
           * requireNonNull is safe because either our compareAndSet succeeded or it failed because
           * another thread did it for us.
           */
          seenExceptionsLocal = requireNonNull(seenExceptions);
        }
        return seenExceptionsLocal;
      }
    
    Registered: Fri Nov 01 12:43:10 UTC 2024
    - Last Modified: Tue May 28 20:40:51 UTC 2024
    - 8.4K bytes
    - Viewed (0)
  10. guava/src/com/google/common/hash/BloomFilterStrategies.java

          long newValue;
          do {
            oldValue = data.get(longIndex);
            newValue = oldValue | mask;
            if (oldValue == newValue) {
              return false;
            }
          } while (!data.compareAndSet(longIndex, oldValue, newValue));
    
          // We turned the bit on, so increment bitCount.
          bitCount.increment();
          return true;
        }
    
        boolean get(long bitIndex) {
    Registered: Fri Nov 01 12:43:10 UTC 2024
    - Last Modified: Mon Oct 10 19:45:10 UTC 2022
    - 10.7K bytes
    - Viewed (0)
Back to top