日韩av黄I国产麻豆传媒I国产91av视频在线观看I日韩一区二区三区在线看I美女国产在线I麻豆视频国产在线观看I成人黄色短片

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 >

python多重循环导致内存不足_Python多重处理拒绝循环

發布時間:2025/3/20 69 豆豆
生活随笔 收集整理的這篇文章主要介紹了 python多重循环导致内存不足_Python多重处理拒绝循环 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

我最近發現了Python的多重處理,所以我正在玩弄它,我跑進了一堵墻。Python多重處理拒絕循環

這是我的工作腳本:

import multiprocessing, time

def p_def():

print "running p"

time.sleep(5)

def v_def():

print "running v"

time.sleep(5)

p = multiprocessing.Process(target=p_def)

v = multiprocessing.Process(target=v_def)

while True:

time.sleep(0.25)

p.start()

while p.is_alive() == True:

time.sleep(0.5)

print "waiting for it to finish"

一切運作良好,當我運行的代碼,它啟動了p_def但是當它完成,并希望再次運行它,它運行到并輸出我這個錯誤:

running p

waiting for it to finish

waiting for it to finish

waiting for it to finish

waiting for it to finish

waiting for it to finish

waiting for it to finish

waiting for it to finish

waiting for it to finish

waiting for it to finish

waiting for it to finish

Traceback (most recent call last):

File "proc.py", line 19, in

p.start()

File "/usr/lib/python2.7/multiprocessing/process.py", line 120, in start

assert self._popen is None, 'cannot start a process twice'

AssertionError: cannot start a process twice

這對我來說似乎有點奇怪。我的理解是,它應該能夠再次運行它,但是,我在網上看到的是人們說它不能兩次運行同樣的事情。

這是怎么回事?我該如何讓它運行兩次?

+0

不直接相關的問題,但不是忙等待進程退出,你可以(并且可能應該)使用'p.join()'函數。 –

總結

以上是生活随笔為你收集整理的python多重循环导致内存不足_Python多重处理拒绝循环的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。