Stream#parallel() は要スレッドセーフ Stream#parallel() で並列化されたストリームはマルチスレッドで処理されるため、map や filter などの中間操作、forEach などの終端操作がスレッドセーフではない場合に問題が発生します。 public static void main(String[] a) throws Exception { Set<String> set1 = new ConcurrentSkipListSet<>(); digestStream().parallel().map(String::new).forEach(set1::add); } // 1~10000までの数字文字列のSHA-1ハッシュ値のStreamを返す。 public static Stream<byte[]> digestStream() throws No