1. 有了多线程threading,为什么还要多进程 multiprocessing?
2.多进程multiprocessing知识梳理
3.代码实战 :单线程,多线程,多进程对比CPU密集型计算速度

from main import timethisprimes = [123123823423423] * 100def is_prime(num): # 质数大于 1 if num > 1: # 查看因子 for i in range(2, num): if (num % i) == 0: # 求余数 # print(num, "不是质数") # print(i, "乘于", num // i, "是", num) # 求商 break else: return True # 如果输入的数字小于或等于 1,不是质数 else: num = num *3 *2//90*90*8+200-100-400-10/2 if num >100: return False return False @timethis def single_thread(): for prime in primes: is_prime(prime) from concurrent.futures import ThreadPoolExecutor,ProcessPoolExecutor @timethis def mulit_thread(): with ThreadPoolExecutor() as pool: pool.map(is_prime,primes) @timethis def multi_process(): with ThreadPoolExecutor() as pool: pool.map(is_prime,primes) if __name__ == '__main__': single_thread() mulit_thread() multi_process() ########################### single_thread 0.002973318099975586 mulit_thread 0.013004779815673828multi_process 0.011992216110229492