Java Code Examples for java.util.concurrent.ConcurrentLinkedDeque#remove()
The following examples show how to use
java.util.concurrent.ConcurrentLinkedDeque#remove() .
You can vote up the ones you like or vote down the ones you don't like,
and go to the original project or source file by following the links above each example. You may check out the related API usage on the sidebar.
Example 1
Source File: ConcurrentLinkedDequeTest.java From openjdk-jdk9 with GNU General Public License v2.0 | 6 votes |
/** * descendingIterator.remove() removes current element */ public void testDescendingIteratorRemove() { final ConcurrentLinkedDeque q = new ConcurrentLinkedDeque(); final Random rng = new Random(); for (int iters = 0; iters < 100; ++iters) { int max = rng.nextInt(5) + 2; int split = rng.nextInt(max - 1) + 1; for (int j = max; j >= 1; --j) q.add(new Integer(j)); Iterator it = q.descendingIterator(); for (int j = 1; j <= split; ++j) assertEquals(it.next(), new Integer(j)); it.remove(); assertEquals(it.next(), new Integer(split + 1)); for (int j = 1; j <= split; ++j) q.remove(new Integer(j)); it = q.descendingIterator(); for (int j = split + 1; j <= max; ++j) { assertEquals(it.next(), new Integer(j)); it.remove(); } assertFalse(it.hasNext()); assertTrue(q.isEmpty()); } }
Example 2
Source File: ConcurrentLinkedDequeTest.java From j2objc with Apache License 2.0 | 6 votes |
/** * descendingIterator.remove() removes current element */ public void testDescendingIteratorRemove() { final ConcurrentLinkedDeque q = new ConcurrentLinkedDeque(); final Random rng = new Random(); for (int iters = 0; iters < 100; ++iters) { int max = rng.nextInt(5) + 2; int split = rng.nextInt(max - 1) + 1; for (int j = max; j >= 1; --j) q.add(new Integer(j)); Iterator it = q.descendingIterator(); for (int j = 1; j <= split; ++j) assertEquals(it.next(), new Integer(j)); it.remove(); assertEquals(it.next(), new Integer(split + 1)); for (int j = 1; j <= split; ++j) q.remove(new Integer(j)); it = q.descendingIterator(); for (int j = split + 1; j <= max; ++j) { assertEquals(it.next(), new Integer(j)); it.remove(); } assertFalse(it.hasNext()); assertTrue(q.isEmpty()); } }
Example 3
Source File: ConcurrentLinkedDequeTest.java From j2objc with Apache License 2.0 | 6 votes |
/** * Descending iterator ordering is reverse FIFO */ public void testDescendingIteratorOrdering() { final ConcurrentLinkedDeque q = new ConcurrentLinkedDeque(); for (int iters = 0; iters < 100; ++iters) { q.add(new Integer(3)); q.add(new Integer(2)); q.add(new Integer(1)); int k = 0; for (Iterator it = q.descendingIterator(); it.hasNext();) { assertEquals(++k, it.next()); } assertEquals(3, k); q.remove(); q.remove(); q.remove(); } }
Example 4
Source File: ConcurrentLinkedDequeTest.java From j2objc with Apache License 2.0 | 6 votes |
/** * iterator.remove() removes current element */ public void testIteratorRemove() { final ConcurrentLinkedDeque q = new ConcurrentLinkedDeque(); final Random rng = new Random(); for (int iters = 0; iters < 100; ++iters) { int max = rng.nextInt(5) + 2; int split = rng.nextInt(max - 1) + 1; for (int j = 1; j <= max; ++j) q.add(new Integer(j)); Iterator it = q.iterator(); for (int j = 1; j <= split; ++j) assertEquals(it.next(), new Integer(j)); it.remove(); assertEquals(it.next(), new Integer(split + 1)); for (int j = 1; j <= split; ++j) q.remove(new Integer(j)); it = q.iterator(); for (int j = split + 1; j <= max; ++j) { assertEquals(it.next(), new Integer(j)); it.remove(); } assertFalse(it.hasNext()); assertTrue(q.isEmpty()); } }
Example 5
Source File: ConcurrentLinkedDequeTest.java From j2objc with Apache License 2.0 | 6 votes |
/** * retainAll(c) retains only those elements of c and reports true if change */ public void testRetainAll() { ConcurrentLinkedDeque q = populatedDeque(SIZE); ConcurrentLinkedDeque p = populatedDeque(SIZE); for (int i = 0; i < SIZE; ++i) { boolean changed = q.retainAll(p); if (i == 0) assertFalse(changed); else assertTrue(changed); assertTrue(q.containsAll(p)); assertEquals(SIZE - i, q.size()); p.remove(); } }
Example 6
Source File: ConcurrentLinkedDequeTest.java From openjdk-jdk9 with GNU General Public License v2.0 | 6 votes |
/** * Descending iterator ordering is reverse FIFO */ public void testDescendingIteratorOrdering() { final ConcurrentLinkedDeque q = new ConcurrentLinkedDeque(); for (int iters = 0; iters < 100; ++iters) { q.add(new Integer(3)); q.add(new Integer(2)); q.add(new Integer(1)); int k = 0; for (Iterator it = q.descendingIterator(); it.hasNext();) { assertEquals(++k, it.next()); } assertEquals(3, k); q.remove(); q.remove(); q.remove(); } }
Example 7
Source File: ConcurrentLinkedDequeTest.java From openjdk-jdk9 with GNU General Public License v2.0 | 6 votes |
/** * iterator.remove() removes current element */ public void testIteratorRemove() { final ConcurrentLinkedDeque q = new ConcurrentLinkedDeque(); final Random rng = new Random(); for (int iters = 0; iters < 100; ++iters) { int max = rng.nextInt(5) + 2; int split = rng.nextInt(max - 1) + 1; for (int j = 1; j <= max; ++j) q.add(new Integer(j)); Iterator it = q.iterator(); for (int j = 1; j <= split; ++j) assertEquals(it.next(), new Integer(j)); it.remove(); assertEquals(it.next(), new Integer(split + 1)); for (int j = 1; j <= split; ++j) q.remove(new Integer(j)); it = q.iterator(); for (int j = split + 1; j <= max; ++j) { assertEquals(it.next(), new Integer(j)); it.remove(); } assertFalse(it.hasNext()); assertTrue(q.isEmpty()); } }
Example 8
Source File: ConcurrentLinkedDequeTest.java From openjdk-jdk9 with GNU General Public License v2.0 | 6 votes |
/** * retainAll(c) retains only those elements of c and reports true if change */ public void testRetainAll() { ConcurrentLinkedDeque q = populatedDeque(SIZE); ConcurrentLinkedDeque p = populatedDeque(SIZE); for (int i = 0; i < SIZE; ++i) { boolean changed = q.retainAll(p); if (i == 0) assertFalse(changed); else assertTrue(changed); assertTrue(q.containsAll(p)); assertEquals(SIZE - i, q.size()); p.remove(); } }
Example 9
Source File: ConcurrentLinkedDequeTest.java From openjdk-jdk9 with GNU General Public License v2.0 | 5 votes |
/** * Modifications do not cause iterators to fail */ public void testWeaklyConsistentIteration() { final ConcurrentLinkedDeque q = new ConcurrentLinkedDeque(); q.add(one); q.add(two); q.add(three); for (Iterator it = q.iterator(); it.hasNext();) { q.remove(); it.next(); } assertEquals("deque should be empty again", 0, q.size()); }
Example 10
Source File: ConcurrentLinkedDequeTest.java From openjdk-jdk9 with GNU General Public License v2.0 | 5 votes |
/** * removeAll(c) removes only those elements of c and reports true if changed */ public void testRemoveAll() { for (int i = 1; i < SIZE; ++i) { ConcurrentLinkedDeque q = populatedDeque(SIZE); ConcurrentLinkedDeque p = populatedDeque(i); assertTrue(q.removeAll(p)); assertEquals(SIZE - i, q.size()); for (int j = 0; j < i; ++j) { Integer x = (Integer)(p.remove()); assertFalse(q.contains(x)); } } }
Example 11
Source File: SimpleLifoPool.java From reactor-pool with Apache License 2.0 | 5 votes |
@Override void cancelAcquire(Borrower<POOLABLE> borrower) { if (!isDisposed()) { //ignore pool disposed ConcurrentLinkedDeque<Borrower<POOLABLE>> q = this.pending; if (q.remove(borrower)) { PENDING_COUNT.decrementAndGet(this); } } }
Example 12
Source File: ConcurrentLinkedDequeTest.java From j2objc with Apache License 2.0 | 5 votes |
/** * isEmpty is true before add, false after */ public void testEmpty() { ConcurrentLinkedDeque q = new ConcurrentLinkedDeque(); assertTrue(q.isEmpty()); q.add(one); assertFalse(q.isEmpty()); q.add(two); q.remove(); q.remove(); assertTrue(q.isEmpty()); }
Example 13
Source File: ConcurrentLinkedDequeTest.java From j2objc with Apache License 2.0 | 5 votes |
/** * size() changes when elements added and removed */ public void testSize() { ConcurrentLinkedDeque q = populatedDeque(SIZE); for (int i = 0; i < SIZE; ++i) { assertEquals(SIZE - i, q.size()); q.remove(); } for (int i = 0; i < SIZE; ++i) { assertEquals(i, q.size()); q.add(new Integer(i)); } }
Example 14
Source File: ConcurrentLinkedDequeTest.java From j2objc with Apache License 2.0 | 5 votes |
/** * remove() removes next element, or throws NSEE if empty */ public void testRemove() { ConcurrentLinkedDeque q = populatedDeque(SIZE); for (int i = 0; i < SIZE; ++i) { assertEquals(i, q.remove()); } try { q.remove(); shouldThrow(); } catch (NoSuchElementException success) {} }
Example 15
Source File: ConcurrentLinkedDequeTest.java From j2objc with Apache License 2.0 | 5 votes |
/** * removeAll(c) removes only those elements of c and reports true if changed */ public void testRemoveAll() { for (int i = 1; i < SIZE; ++i) { ConcurrentLinkedDeque q = populatedDeque(SIZE); ConcurrentLinkedDeque p = populatedDeque(i); assertTrue(q.removeAll(p)); assertEquals(SIZE - i, q.size()); for (int j = 0; j < i; ++j) { Integer x = (Integer)(p.remove()); assertFalse(q.contains(x)); } } }
Example 16
Source File: ConcurrentLinkedDequeTest.java From j2objc with Apache License 2.0 | 5 votes |
/** * Modifications do not cause iterators to fail */ public void testWeaklyConsistentIteration() { final ConcurrentLinkedDeque q = new ConcurrentLinkedDeque(); q.add(one); q.add(two); q.add(three); for (Iterator it = q.iterator(); it.hasNext();) { q.remove(); it.next(); } assertEquals("deque should be empty again", 0, q.size()); }
Example 17
Source File: ConcurrentLinkedDequeTest.java From openjdk-jdk9 with GNU General Public License v2.0 | 5 votes |
/** * remove() removes next element, or throws NSEE if empty */ public void testRemove() { ConcurrentLinkedDeque q = populatedDeque(SIZE); for (int i = 0; i < SIZE; ++i) { assertEquals(i, q.remove()); } try { q.remove(); shouldThrow(); } catch (NoSuchElementException success) {} }
Example 18
Source File: ConcurrentLinkedDequeTest.java From openjdk-jdk9 with GNU General Public License v2.0 | 5 votes |
/** * size() changes when elements added and removed */ public void testSize() { ConcurrentLinkedDeque q = populatedDeque(SIZE); for (int i = 0; i < SIZE; ++i) { assertEquals(SIZE - i, q.size()); q.remove(); } for (int i = 0; i < SIZE; ++i) { assertEquals(i, q.size()); q.add(new Integer(i)); } }
Example 19
Source File: ConcurrentLinkedDequeTest.java From openjdk-jdk9 with GNU General Public License v2.0 | 5 votes |
/** * isEmpty is true before add, false after */ public void testEmpty() { ConcurrentLinkedDeque q = new ConcurrentLinkedDeque(); assertTrue(q.isEmpty()); q.add(one); assertFalse(q.isEmpty()); q.add(two); q.remove(); q.remove(); assertTrue(q.isEmpty()); }