The assignment of partition to thread is random and changes with every execution.
Hilo : 1
Index Inicial : 1
Index Final : 5
Hilo : 2
Index Inicial : 6
Index Final : 10
Hilo : 3
Index Inicial : 11
Index Final : 16
SimpleAsyncTaskExecutor-1 writing items = foo1, foo2, foo3, foo4, foo5
SimpleAsyncTaskExecutor-2 writing items = foo11, foo12, foo13, foo14, foo15
SimpleAsyncTaskExecutor-3 writing items = foo6, foo7, foo8, foo9, foo10, foo11, foo12, foo13, foo14, foo15
see FixedRangePartitioner.java
Hilo : 1
Index Inicial : 1
Index Final : 5
Hilo : 2
Index Inicial : 6
Index Final : 10
Hilo : 3
Index Inicial : 11
Index Final : 16
SimpleAsyncTaskExecutor-2 writing items = foo6, foo7, foo8, foo9, foo10
SimpleAsyncTaskExecutor-1 writing items = foo11, foo12, foo13, foo14, foo15
SimpleAsyncTaskExecutor-3 writing items = foo1, foo2, foo3, foo4, foo5