我是用VSCode開發環境。
今天看別人的代碼,前面寫了GUI,在GUI上點RUN后,斷點只會停在GUI對應的py檔案中,由這個檔案呼叫的其他py檔案里面不能暫停,即使我在執行的代碼中加入斷點也不會暫停。
他里面用到了
runner = multiprocessing.process()
runner.start()
我想在start里面暫停逐步執行,然后進行debug。我在對應的檔案里面加了斷點,在執行的時候卻不會停在那里。
還用到了 threading.thread().也是不可以暫停。
我的主要問題是,為什么不會暫停,該怎么操作,該如何理解multiprocessing。謝謝!
uj5u.com熱心網友回復:
你是以什么方式呼叫其他py檔案的uj5u.com熱心網友回復:
試了這種方式呼叫,除錯沒什么問題a.py
import wx
class MyFrame(wx.Frame):
def __init__(self):
wx.Frame.__init__(self,None)
panel = wx.Panel(self)
btn1 = wx.Button(panel, label='test', pos=(5, 55))
self.Bind(wx.EVT_BUTTON, self.clickBtn, btn1)
def clickBtn(self, event):
from other_file import test
import multiprocessing as mp
m = mp.Process(target=test, args=(1,))
m.start()
m.join()
if __name__ == '__main__':
app = wx.App()
frame1 = MyFrame()
frame1.Show()
app.MainLoop()
other_file.py
def test(x):
print(x)
uj5u.com熱心網友回復:
您好,我手里的代碼大致三個模塊,GUI部分,由GUI開始一個process控制硬體,GUI打開一個mainloop進行測驗。我遇到的問題是,GUI這邊的代碼在process.start之后,我想打斷點到process的部分。還有那個mainloop也是不可以暫停。
uj5u.com熱心網友回復:
光聽你說還是不明白,你可以給個簡單的代碼例子嗎轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/76660.html
上一篇:Python已安裝FFmpeg,但是運行提示: 'ffmpeg' 不是內部或外部命令,也不是可運行的程式或批處理檔案。
下一篇:R語言
