パラレルStreamの基礎
パラレルStreamの基本と、使うべき場面を学びます。
「パラレルStreamの基礎」はCoddyKit上の無料Java Academyレッスンです。 これはレッスン2/3です。 下記で完全なレッスンを無料で読むことができます。その後、ブラウザ内の組み込みコードエディタと24時間対応のAIチューターでハンズオン演習できます。 これはJava Academy学習パスの一部であり、ウェブとCoddyKitアプリ全体で進捗が同期されます。 Java Academyコースには全3レッスンが含まれています。
導入
Parallel Streamは処理を複数のスレッドに分割し、マルチコア CPU を活用します。
作成
コレクションで parallelStream() を使うか、Stream で parallel() を呼び出します。
コード:Parallel Stream
このコードは、複数のスレッドが要素を並列処理する様子を示します。
import java.util.*;public class Main {
public static void main(String[] args) {
List<Integer> nums = Arrays.asList(1,2,3,4,5);
nums.parallelStream().forEach(n -> System.out.println(Thread.currentThread().getName() + " processed " + n));
}
}
順序
Parallel Stream では、要素が順不同で処理される場合があります。順序が重要な場合は forEachOrdered を使います。
コード:forEachOrdered
forEachOrderedは、Parallel Stream で遭遇順序を復元します。
import java.util.*;public class Main {
public static void main(String[] args) {
List<Integer> nums = Arrays.asList(1,2,3,4,5);
nums.parallelStream().forEachOrdered(System.out::println);
}
}
パフォーマンス
Parallel Stream は大規模なコレクションに対する CPU バウンドなタスクに役立ちますが、オーバーヘッドのため、小規模な処理では遅くなる場合があります。
Parallel Stream の確認
クイックチェック:Parallel Stream を使用する場合のリスクを1つ挙げてください。
まとめ
まとめ:Parallel Stream は複数のスレッドを使用します。小規模な処理ではなく、大規模な CPU バウンドタスクに適しています。
よくある質問
「パラレルStreamの基礎」レッスンは無料ですか?
はい。「パラレルStreamの基礎」の完全なテキストはこのウェブで無料で読めます。インタラクティブに演習し(組み込みコードエディタと24時間対応のAIチューター)、Java Academyコースの残りをアンロックするには、CoddyKit PROにアップグレードしてください。 Java Academyコースには全3レッスンが含まれています。
「パラレルStreamの基礎」で何を学びますか?
パラレルStreamの基本と、使うべき場面を学びます。 ブラウザで直接実行するハンズオンコードでJava Academyを演習し、24時間対応のAIチューターがレッスンを進める中での質問に答えます。
Java Academyを始めるのに経験は必要ですか?
事前経験は必要ありません。CoddyKitのJava Academyは初級者から上級者向けに構成されているため、ここから始めるか最初から始めて、自分のペースで進むことができます。 これはレッスン2/3です。
「パラレルStreamの基礎」レッスンにはどのくらい時間がかかりますか?
ほとんどのCoddyKitレッスンは約5~10分かかります。各レッスンはコンパクトでインタラクティブなので、着実に進歩し、ウェブとアプリ全体で正確に前回の場所から再開できます。
このJava Academyレッスンでコードを書いて実行できますか?
はい。すべてのJava Academyレッスンに組み込みコードエディタが含まれているため、ブラウザでリアルコードを書いて実行し、即座のAIフィードバックを取得できます。ローカル設定は不要です。