Я пытаюсь запустить два процесса одновременно, а не запускать по одному. Мой код следующий. Может кто-нибудь сказать мне, что не так? Спасибо!
from multiprocessing import Process
from os import getpid
from random import randint
from time import time, sleep
def download_task(filename):
print('Initiate downloading task, task No.[%d].' % getpid())
print('Begin downloading %s...' % filename)
time_to_download = randint(5, 10)
sleep(time_to_download)
print('Finished downloading %s! It took %d seconds' % (filename, time_to_download))
def main():
start = time()
p1 = Process(target=download_task, args=('Python: from beginer to lunatic.pdf',))
p1.start()
p2 = Process(target=download_task, args=('Peking Hot.avi',))
p2.start()
p1.join()
p2.join()
end = time()
print('It took %.2f seconds in total.' % (end - start))
if __name__ == '__main__':
main()
Прямо сейчас, это все, что я получил.
It took 0.14 seconds in total.
Но я должен получить что-то вроде этого:
Start downloading Python: from beginer to lunatic.pdf...
Start downloading Peking Hot.avi...
Finished downloading Python: from beginer to lunatic.pdf! It took 5 seconds
Finished downloading Peking Hot.avi! It took 5 seconds
It took 5.00 seconds in total.