并行计算
akon_wang_hkbu
这个作者很懒,什么都没留下…
展开
-
multiprocessing Pool
import multiprocessing as mpimport threading as tdimport timedef job(x): return x * xdef multicore(): pool = mp.Pool() res = pool.map(job, range(10)) print("pool result:", res) res = pool...转载 2018-04-09 16:55:25 · 276 阅读 · 0 评论 -
multiprocessing Lock
import multiprocessing as mpimport timedef job(v, num, l): l.acquire() for i in range(19): time.sleep(0.1) v.value += num print(v.value) l.release()def multicore(): l = mp.Lock() v =...转载 2018-04-09 16:58:08 · 910 阅读 · 0 评论 -
thread
from time import sleep, ctimeimport threadloops = [4, 2]def loop(nloop, nsec, lock): print 'start loop', nloop, 'at:', ctime() sleep(nsec) print 'loop', nloop, 'done at:', ctime() lock.release...原创 2018-04-04 15:55:23 · 300 阅读 · 0 评论 -
threading
# -*- coding: utf-8 -*-from time import sleep, ctimeimport threadingloops = [4, 2]def loop(nloop, nsec): print 'start loop', nloop, 'at:', ctime() sleep(nsec) print 'loop', nloop, 'done at:', ct...原创 2018-04-04 16:09:03 · 302 阅读 · 0 评论 -
queue
import threadingimport timefrom queue import Queuedef job(l, q): for i in range(len(l)): l[i] = l[i] ** 2 q.put(l)def multithreading(): q = Queue() threads = [] data = [[1, 2, 3], [3, 4...原创 2018-04-04 16:09:35 · 170 阅读 · 0 评论 -
lock
import threadingimport timedef job1(): global A, lock lock.acquire() for i in range(10): A += 1 lock.release()def job2(): global A, lock lock.acquire() for i in range(10): A +=...原创 2018-04-04 16:15:17 · 210 阅读 · 0 评论