Java 8은
패키지에 위치한 스트림을 소개합니다. 스트림은 배열 또는 컬렉션과 유사한 일련의 객체이며 필터링, 매핑, 감소, 제한, 일치 및 찾기를 포함한 다양한 방법 및 집계 작업을 지원합니다. 이러한 작업은 원래 데이터 소스를 수정하지 않고 처리를위한 새 스트림을 만듭니다. 스트림은 주로 순차 스트림과 병렬 스트림의 두 가지 유형으로 나뉩니다. 이 기사는 둘 사이의 차이점에 중점을 둘 것입니다.
순차 스트림이란 무엇입니까? java.util.stream
순차 스트림은 단일 스레드를 사용하여 파이프 라인의 데이터를 처리합니다. 순차 스트림의 객체는 동일한 처리 시스템에 위치하고 순서대로 배열되므로 멀티 코어 시스템을 사용하여 처리되지 않습니다.
평행 스트림이란 무엇입니까?
병렬 스트림은 멀티 코어 프로세서를 사용하여 프로그램 성능을 향상시킵니다. 코드는 다른 커널에서 병렬로 실행되는 병렬 스트림 방법을 통해 여러 스트림으로 나뉩니다. 최종 결과는 병합 후에 표시됩니다. 개발자가 실행을 제어하지 않기 때문에 결과는 무질서 할 수 있습니다. 병렬 흐름은 다음과 같은 방식으로 사용할 수 있습니다.
인터페이스에는 병렬 스트림을 생성하기위한
메소드가 포함되어 있습니다.
인터페이스에는 순서 스트림을 병렬 스트림으로 변환하는 데 사용할 수있는
메소드가 포함되어 있습니다.
순차적 흐름과 평행 흐름의 차이
다음 표는 Java의 순차적 스트림과 병렬 스트림의 주요 차이점을 요약합니다.
-
결론
Java의 스트림은 주로 순차 스트림과 병렬 스트림으로 나뉩니다. 순차 스트림은 컴퓨터의 단일 커널을 사용하여 실행되지만 성능이 느리지 만 플랫폼 관련은 아니지만 순서대로 결과를 순서대로 순서대로 수행합니다. 병렬 스트림은 컴퓨터의 여러 코어를 사용하여 실행되며 성능은 빠르지 만 결과는 순서가 좋지 않습니다.
순차 및 병렬 스트림 faq
> 1. 어떤 스트림이 플랫폼과 아무 관련이 없습니까?
순차 스트리밍은 단일 커널 만 사용하여 코드를 실행하므로 플랫폼 관련입니다. 병렬 스트림은 여러 커널을 사용하여 코드를 실행하므로 플랫폼에 따라 다릅니다.
> 2. 오류가 발생하기 쉬운 스트림은 무엇입니까?
평행 스트림은 컴퓨터의 여러 코어에서 실행되기 때문에 오류가 발생하기 쉽고 결과가 순서대로 진행되기 때문에 오류가 발생하기 쉽습니다. 순차 스트리밍 오류의 확률은 단일 커널 만 사용하여 코드를 실행하기 때문에 낮습니다.
> 3. 순차 및 평행 한 스트림에서 반복이 언제 기다려야합니까?
순차 스트림에서는 한 번에 하나의 반복 만 수행 할 수 있습니다. 다음 반복은 현재 반복이 완료 될 때까지 기다려야합니다. 병렬 스트림에서 반복은 다른 커널에서 동시에 작동합니다. 모든 커널이 바쁘면 반복이 기다려야합니다.
> 4. 실행 중에 순서를 유지하는 스트림은 무엇입니까?
순차 스트림은 하나의 커널 만 사용하기 때문에 실행 중에 순차적으로 유지되며 각 반복은 현재 반복이 실행을 완료 할 때까지 기다려야합니다.
> 5. 어떤 스트림이 더 빨리 성능이 작용합니까?
병렬 스트리밍은 여러 코어를 사용하여 실행되므로 더 빠르게 성능이 작용합니다. 순차 스트림은 하나의 코어 만 사용하므로 성능이 느립니다.
위 내용은 Java의 평행 스트림과 순차 스트림의 차이의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!