就那个pool的例子,为啥我的双核感觉像单进程?
Topic source我把这段代码在pycharm上跑了一下,发现运行结果又不一样.我的multiprocessing.cpucount()返回值是4(其实是返回并发线程数),但实际测试结果显示,不论我pool参数是几(比如n),pycharm上都能立刻执行n个进程,哪怕n=10也没问题.所以和老师说的并不相同.而wing上始终都是一个一个的运行,我猜这应该是ide的差别造成的,所以,有的时候ide不同可能运行结果也不同!++
- 1
我把这段代码在pycharm上跑了一下,发现运行结果又不一样.我的multiprocessing.cpucount()返回值是4(其实是返回并发线程数),但实际测试结果显示,不论我pool参数是几(比如n),pycharm上都能立刻执行n个进程,哪怕n=10也没问题.所以和老师说的并不相同.而wing上始终都是一个一个的运行,我猜这应该是ide的差别造成的,所以,有的时候ide不同可能运行结果也不同!++
用户b6fww5vvfz
电脑是双核4线程,这一点我重新确认过 上面pool的例子原封不动复制过来的,wingIde运行结果: Parent process 6892. Waiting for all subprocesses done... Run task 2 (7420)... Task 2 runs 2.17 seconds. Run task 1 (2616)... Task 1 runs 2.32 seconds. Run task 0 (5768)... Task 0 runs 1.48 seconds. Run task 4 (5768)... Task 4 runs 1.47 seconds. Run task 3 (7268)... Task 3 runs 2.93 seconds. All subprocesses done.
运行了几遍都是类似这样.感觉这是一个运行完再运行的下一个嘛!怎么回事呢?