Я начал недавно изучать многопроцессорность в python. В связи с этим у меня есть некоторые вопросы. Следующий код показывает мой пример:Несколько вопросов о multiprocessing.Pool
import multiprocessing
from time import *
def func(n):
for i in range(100):
print(i, "/ 100")
for j in range(100000):
a=j*i
b=j*i/2
if __name__ == '__main__':
#Test with multiprosessing
pool = multiprocessing.Pool(processes=4)
t1 = clock()
pool.map(func, range(10))
pool.close()
t2 = clock()
print(t2-t1)
#Test without multiprocessing
func(range(10))
t3 = clock()
print(t3-t2)
- ли этот код использовать четыре ядра процессора или я сделал ошибку?
- Почему рабочая среда без многопроцессорной обработки намного быстрее? Есть ли ошибка?
- Почему команда
print
не работает при многопроцессорной обработке?