import multiprocessing as mp
# 要執行的任務函式
def task(pid, name):
print("pid:", pid, "name:", name)
return str(pid) + ":" + name
def main():
pool = mp.pool()
cpus = mp.cpu_count()
res_list = list()
# for i in range(0, 6):
for i in range(0, cpus):
pool.close()
pool.join()
print(res_list)
# 如果提交的多於四個任務,那麼每個核就需要同時執行2個以上的任務,帶來任務切換的成本,降低了效率。
# 所以我們設定的並行任務數量最好等於cpu的核心數
# 使用res.get()來獲取task的返回值
new_list = list()
for res in res_list:
print(new_list)
# 為什麼不在for迴圈中直接 res.get()?
# 實際上,獲取返回值的過程最好放在程序池**之後進行,避免阻塞之後的語句
if __name__ == "__main__":
main()
正確使用記憶體
對於初學者來說,記憶體是個神秘的空間。程式的絕大部分錯誤,也是在於記憶體的使用不當造成的,而且這些錯誤有些都是隱藏很深的。所以,如何掌握記憶體的使用,通曉系統對記憶體的管理手段,將是軟體成功的乙個非常關鍵的因素。首先我們要了解記憶體的分配方式。一般來說,記憶體的分配方式有三種 1 從靜態儲存區域分配...
Calendar 正確使用
public static void main string args calendar cal calendar.getinstance cal.settime new date 當前年 int year cal.get calendar.year 當前月 int month cal.get ca...
正確使用記憶體
對於初學者來說,記憶體是個神秘的空間。程式的絕大部分錯誤,也是在於記憶體的使用不當造成的,而且這些錯誤有些都是隱藏很深的。所以,如何掌握記憶體的使用,通曉系統對記憶體的管理手段,將是軟體成功的乙個非常關鍵的因素。首先我們要了解記憶體的分配方式。一般來說,記憶體的分配方式有三種 1 從靜態儲存區域分配...