9
mylist.stream()
.filter(m -> m.isokay() != null)
.forEach(m -> m.dosomething()));
Per questo codice, è in esecuzione su più thread? In caso contrario, come posso farlo? Voglio che ogni m.dosomething()
venga eseguito su thread separati per velocizzare il lavoro.Multithreading Java 8 Stream
Penso che si sta cercando [ 'parallelStream()'] (https://docs.oracle.com/javase/8/docs/api/java/util/Collection.html#parallelStream--) . – Tunaki
Fyi, '.parallelStream()' farà uso di 'ForkJoinPool.commonPool()'. –
Tieni presente che il multithreading può, in molti casi, rallentare il tuo codice. Vedi per es. [questa pagina] (http://gee.cs.oswego.edu/dl/html/StreamParallelGuidance.html) scritta da uno degli autori di stream. –