Не делит.
from multiprocessing import Pool
from time import sleep
def f(x):
print('Sleep: %s N: %s' % (x[0], x[1]))
sleep(x[0])
if __name__ == '__main__':
times = [(20, 1), (1, 2), (30, 3), (1, 4), (1, 5),
(1, 6), (1, 7), (1, 8), (1, 9), (1, 10), (1, 11), (1, 12), (1, 13), (1, 14), (1, 15), (1, 16)]
pool = Pool(processes=2)
pool.map(f, times)
Out:
Sleep: 20 N: 1
Sleep: 30 N: 3
Sleep: 1 N: 2
Sleep: 1 N: 5
Sleep: 1 N: 6
Sleep: 1 N: 7
Sleep: 1 N: 8
Sleep: 1 N: 9
Sleep: 1 N: 10
Sleep: 1 N: 11
Sleep: 1 N: 12
Sleep: 1 N: 13
Sleep: 1 N: 14
Sleep: 1 N: 4
Sleep: 1 N: 15
Sleep: 1 N: 16
т.е. сделать до 8 (массив times) и будет норм