本文整理了Java中java.util.stream.IntStream.onClose()
方法的一些代码示例,展示了IntStream.onClose()
的具体用法。这些代码示例主要来源于Github
/Stackoverflow
/Maven
等平台,是从一些精选项目中提取出来的代码,具有较强的参考意义,能在一定程度帮忙到你。IntStream.onClose()
方法的具体详情如下:
包路径:java.util.stream.IntStream
类名称:IntStream
方法名:onClose
暂无
代码示例来源:origin: speedment/speedment
@Override
public IntStream onClose(Runnable closeHandler) {
return toStream().onClose(closeHandler);
}
代码示例来源:origin: google/guava
private void testMapWithIndex_intStream_closeIsPropagated(IntStream source) {
AtomicInteger intStreamCloseCount = new AtomicInteger();
IntStream intStream = source.onClose(intStreamCloseCount::incrementAndGet);
Stream<String> withIndex = Streams.mapWithIndex(intStream, (str, i) -> str + ":" + i);
withIndex.close();
Truth.assertThat(intStreamCloseCount.get()).isEqualTo(1);
}
代码示例来源:origin: speedment/speedment
@Override
public IntStream onClose(Runnable closeHandler) {
return wrap(stream().onClose(closeHandler));
}
代码示例来源:origin: net.dongliu/commons-lang
@Override
public ExIntStream onClose(Runnable closeHandler) {
return ExIntStream.of(stream.onClose(closeHandler));
}
}
代码示例来源:origin: se.ugli.ugli-commons/ugli-commons
@Override
public IntStream onClose(final Runnable closeHandler) {
return new IntResourceStream(stream.onClose(closeHandler), closeOnTerminalOperation, resources);
}
代码示例来源:origin: com.speedment.runtime/runtime-core
@Override
public IntStream onClose(Runnable closeHandler) {
return wrap(stream().onClose(closeHandler));
}
代码示例来源:origin: com.google.guava/guava-tests
private void testMapWithIndex_intStream_closeIsPropagated(IntStream source) {
AtomicInteger intStreamCloseCount = new AtomicInteger();
IntStream intStream = source.onClose(intStreamCloseCount::incrementAndGet);
Stream<String> withIndex = Streams.mapWithIndex(intStream, (str, i) -> str + ":" + i);
withIndex.close();
Truth.assertThat(intStreamCloseCount.get()).isEqualTo(1);
}
代码示例来源:origin: akarnokd/RxJava2Jdk8Interop
@Test
public void closedAtTheEnd() {
AtomicInteger closed = new AtomicInteger();
FlowableInterop.fromStream(IntStream.range(1, 6)
.onClose(() -> closed.getAndIncrement())
.boxed())
.test()
.assertResult(1, 2, 3, 4, 5);
assertEquals(1, closed.get());
}
代码示例来源:origin: akarnokd/RxJava2Jdk8Interop
@Test
public void empty() {
AtomicInteger closed = new AtomicInteger();
FlowableInterop.fromStream(IntStream.range(1, 1)
.onClose(() -> closed.getAndIncrement())
.boxed())
.test()
.assertResult();
assertEquals(1, closed.get());
}
代码示例来源:origin: akarnokd/RxJava2Jdk8Interop
@Test
public void closedAtTheEnd() {
AtomicInteger closed = new AtomicInteger();
ObservableInterop.fromStream(IntStream.range(1, 6)
.onClose(() -> closed.getAndIncrement())
.boxed())
.test()
.assertResult(1, 2, 3, 4, 5);
assertEquals(1, closed.get());
}
代码示例来源:origin: akarnokd/RxJava2Jdk8Interop
@Test
public void closedInTheMiddle() {
AtomicInteger closed = new AtomicInteger();
ObservableInterop.fromStream(IntStream.range(1, 6)
.onClose(() -> closed.getAndIncrement())
.boxed())
.take(3)
.test()
.assertResult(1, 2, 3);
assertEquals(1, closed.get());
}
代码示例来源:origin: akarnokd/RxJava2Jdk8Interop
@Test
public void closedInTheMiddle() {
AtomicInteger closed = new AtomicInteger();
FlowableInterop.fromStream(IntStream.range(1, 6)
.onClose(() -> closed.getAndIncrement())
.boxed())
.take(3)
.test()
.assertResult(1, 2, 3);
assertEquals(1, closed.get());
}
代码示例来源:origin: neo4j-contrib/neo4j-graph-algorithms
private IntStream idStream(@Name(value = "start", defaultValue = "null") Object start, Graph graph, int limit) {
int nodeCount = Math.toIntExact(graph.nodeCount());
if (start instanceof String) {
String label = start.toString();
int labelId = transaction.tokenRead().nodeLabel(label);
int countWithLabel = Math.toIntExact(transaction.dataRead().countsForNodeWithoutTxState(labelId));
NodeLabelIndexCursor cursor = transaction.cursors().allocateNodeLabelIndexCursor();
transaction.dataRead().nodeLabelScan(labelId, cursor);
cursor.next();
LongStream ids;
if (limit == -1) {
ids = LongStream.range(0, countWithLabel).map( i -> cursor.next() ? cursor.nodeReference() : -1L );
} else {
int[] indexes = ThreadLocalRandom.current().ints(limit + 1, 0, countWithLabel).sorted().toArray();
IntStream deltas = IntStream.range(0, limit).map(i -> indexes[i + 1] - indexes[i]);
ids = deltas.mapToLong(delta -> { while (delta > 0 && cursor.next()) delta--;return cursor.nodeReference(); });
}
return ids.mapToInt(graph::toMappedNodeId).onClose(cursor::close);
} else if (start instanceof Collection) {
return ((Collection)start).stream().mapToLong(e -> ((Number)e).longValue()).mapToInt(graph::toMappedNodeId);
} else if (start instanceof Number) {
return LongStream.of(((Number)start).longValue()).mapToInt(graph::toMappedNodeId);
} else {
if (nodeCount < limit) {
return IntStream.range(0,nodeCount).limit(limit);
} else {
return IntStream.generate(() -> ThreadLocalRandom.current().nextInt(nodeCount)).limit(limit);
}
}
}
代码示例来源:origin: org.neo4j/graph-algorithms-algo
private IntStream idStream(@Name(value = "start", defaultValue = "null") Object start, Graph graph, int limit) {
int nodeCount = Math.toIntExact(graph.nodeCount());
if (start instanceof String) {
String label = start.toString();
int labelId = transaction.tokenRead().nodeLabel(label);
int countWithLabel = Math.toIntExact(transaction.dataRead().countsForNodeWithoutTxState(labelId));
NodeLabelIndexCursor cursor = transaction.cursors().allocateNodeLabelIndexCursor();
transaction.dataRead().nodeLabelScan(labelId, cursor);
cursor.next();
LongStream ids;
if (limit == -1) {
ids = LongStream.range(0, countWithLabel).map( i -> cursor.next() ? cursor.nodeReference() : -1L );
} else {
int[] indexes = ThreadLocalRandom.current().ints(limit + 1, 0, countWithLabel).sorted().toArray();
IntStream deltas = IntStream.range(0, limit).map(i -> indexes[i + 1] - indexes[i]);
ids = deltas.mapToLong(delta -> { while (delta > 0 && cursor.next()) delta--;return cursor.nodeReference(); });
}
return ids.mapToInt(graph::toMappedNodeId).onClose(cursor::close);
} else if (start instanceof Collection) {
return ((Collection)start).stream().mapToLong(e -> ((Number)e).longValue()).mapToInt(graph::toMappedNodeId);
} else if (start instanceof Number) {
return LongStream.of(((Number)start).longValue()).mapToInt(graph::toMappedNodeId);
} else {
if (nodeCount < limit) {
return IntStream.range(0,nodeCount).limit(limit);
} else {
return IntStream.generate(() -> ThreadLocalRandom.current().nextInt(nodeCount)).limit(limit);
}
}
}
内容来源于网络,如有侵权,请联系作者删除!