量化程式設計技術 多執行緒和多程序

2022-07-05 03:09:08 字數 1301 閱讀 1088

#

-*- coding: utf-8 -*-

#@date: 2017-08-26

#@original:

#多程序

import

itertools

from concurrent.futures import

processpoolexecutor

result =

#**函式,通過add_done_callback任務完成後呼叫

defwhen_done(r):

#when_done在主程序中執行

"""with class_a() as a: 上下文管理器

"""with processpoolexecutor() as pool:

for keep_stock_threshold, buy_change_threshold in

\ itertools.product(keep_stock_list, buy_change_list):

"""submit提交任務:使用calc函式和的引數通過submit提交到獨立程序

提交的任務必須是簡單函式,程序並行不支援類方法、閉包等

函式引數和返回值必須相容pickle序列化,程序間的通訊需要

"""future_result =pool.submit(calc, keep_stock_threshold,

buy_change_threshold)

#當程序完成任務即calc執行結束後的**函式

future_result.add_done_callback(when_done)

print(sorted(result)[::-1][:10])

#多執行緒

from concurrent.futures import

threadpoolexecutor

result =

defwhen_done(r):

with threadpoolexecutor(max_workers=8) as pool:

for keep_stock_threshold, buy_change_threshold in

\ itertools.product(keep_stock_list, buy_change_list):

future_result =pool.submit(calc, keep_stock_threshold,

buy_change_threshold)

future_result.add_done_callback(when_done)

多程序和多執行緒

嵌入式linux中文站,關於多程序和多執行緒,教科書上最經典的一句話是 程序是資源分配的最小單位,執行緒是cpu排程的最小單位 這句話應付考試基本上夠了,但如果在工作中遇到類似的選擇問題,那就沒有那麼簡單了,選的不好,會讓你深受其害。經常在網路上看到有xdjm問 多程序好還是多執行緒好?linux下...

多執行緒和多程序

首先說什麼是程序,載入記憶體中執行的程式,它就是乙個程序,而這個程式中執行的某個子任務就是乙個執行緒,程式包含了執行緒。程序對於執行緒是唯一的,而乙個程序可以有多個執行緒。程式執行的時候每隔一定時間在多執行緒之間執行,比如第乙個執行緒執行到0.01秒,馬上暫停跳到下乙個執行緒開始執行,又執行到0.0...

多程序和多執行緒

一 python 中多程序的使用 1 使用multiprocessing p process target function,args 引數,p.start 含義啟動程序 p.join 含義是等待子程序結束後在繼續執行 2 如果啟動大量的子程序,可以用程序池的方式批量建立子程序 from multi...