Rumah > Soal Jawab > teks badan
List<String> list = Arrays.asList("a","b","c","d");
ExecutorService service = Executors.newFixedThreadPool(2);
service.execute(() -> list.parallelStream().forEach(System.out::println));
这样一段代码什么都没输出,而将parallelStream去掉就可以输出,这是什么机制?谁能解释下
阿神2017-04-18 10:51:08
Kaedah parallelStream dilaksanakan secara serentak, yang bersamaan dengan membuka utas untuk mengeluarkan soout.
Sebab mengapa tiada output adalah kerana utas utama telah selesai dilaksanakan, dan sub-utas selesai pada masa ini. Tambahkan tunggu pada penghujung kod dan anda boleh melihat kesannya
巴扎黑2017-04-18 10:51:08
Jawapan di tingkat dua sangat bagus
Ia bersamaan dengan membuka benang n+ dan bukannya n