Rumah >Java >javaTutorial >Perbezaan antara aliran selari dan berurutan di Java
. Stream adalah urutan objek, sama dengan array atau koleksi, dan menyokong pelbagai kaedah dan operasi agregasi, termasuk penapisan, pemetaan, pengurangan, pengehadan, padanan, dan mencari. Operasi ini tidak mengubah suai sumber data asal, tetapi membuat aliran baru untuk diproses. Aliran terutamanya dibahagikan kepada dua jenis: aliran berurutan dan aliran selari. Artikel ini akan memberi tumpuan kepada perbezaan antara keduanya. java.util.stream
Apakah aliran selari?
Antara muka
Collection
untuk membuat aliran selari. parallelStream()
Antara muka BaseStream
yang boleh digunakan untuk menukar aliran berurutan ke dalam aliran selari. parallel()
Stream di Java terutamanya dibahagikan kepada aliran berurutan dan aliran selari. Aliran berurutan melakukan objek dalam urutan, dengan hasil yang teratur, dilaksanakan menggunakan satu kernel komputer, prestasi perlahan, tetapi tidak berkaitan dengan platform. Aliran selari dilaksanakan menggunakan pelbagai teras komputer, dan prestasi cepat, tetapi hasilnya tidak dapat dipertahankan.
Streaming berurutan adalah berkaitan dengan platform, kerana ia hanya menggunakan kernel tunggal untuk melaksanakan kod. Aliran selari menggunakan pelbagai kernel untuk melaksanakan kod, jadi mereka bergantung pada platform.
aliran selari adalah lebih rawan ralat kerana mereka berjalan pada pelbagai teras komputer dan hasilnya tidak dapat dipertahankan. Kebarangkalian kesilapan streaming berurutan lebih rendah kerana ia hanya menggunakan kernel tunggal untuk melaksanakan kod.
Dalam aliran berurutan, hanya satu lelaran yang boleh dilakukan pada satu masa. Lelaran seterusnya mesti menunggu lelaran semasa selesai. Dalam aliran selari, lelaran berfungsi secara serentak pada kernel yang berbeza. Jika semua biji sibuk, lelaran mesti menunggu.
Aliran berurutan kekal dalam urutan semasa pelaksanaan, kerana ia hanya menggunakan satu kernel, dan setiap lelaran mesti menunggu lelaran semasa untuk menyelesaikan pelaksanaan.
Streaming selari melakukan lebih cepat kerana ia dilaksanakan menggunakan pelbagai teras. Aliran berurutan hanya menggunakan satu teras, jadi prestasi lebih perlahan.
Atas ialah kandungan terperinci Perbezaan antara aliran selari dan berurutan di Java. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!