iT邦幫忙

0

python 運行一段時間後卡住[已解決]

  • 分享至 

  • xImage

如題,小弟目前正在樹莓派4上使用Thonny運行python,我的程式主要工作是將感測器資料,分別存入DB和使用websocket發送消息給web,運作剛開始工作都正常,但大約過10分鐘左右或更短(時間沒有規律),程式會卡住,並且沒有報錯,想請問各位大大們,如果遇到類似狀況會如何排錯,目前我是分別將存入資料庫和websocket個別分開單獨運行進行測試,看看會不會是其中一方的問題,結果兩個function都會運行一段時間就卡住,跟同時運作狀況一樣 /images/emoticon/emoticon02.gif
所以想請教各位大大,有沒有好的排錯技巧。(沒有報錯代碼的情況)


補充一下後續。
針對代碼除錯,我將function都關掉,留下單純藍芽接收資料時,我發現單單只是接收就會卡住...後來去爬文發現,原來是ESP32和RPI之間的藍芽溝通,很早就存在問題,所以這算是先天性的缺陷,所以我計畫,先將這部分修好,再看看後續的function表現。
https://stackoverflow.com/questions/65366042/bluepy-frequent-ble-disconnects-between-raspberry-pi4-and-esp32-bluetooth

看更多先前的討論...收起先前的討論...
froce iT邦大師 1 級 ‧ 2022-04-07 16:31:52 檢舉
你傳送器的更新和存檔頻率?
andow1198 iT邦新手 4 級 ‧ 2022-04-07 17:11:15 檢舉
F大,您好,傳感器1ms,存檔頻率 2ms
froce iT邦大師 1 級 ‧ 2022-04-07 19:31:49 檢舉
你有沒有想到你的硬碟、SSD的儲存速度可能比你的存檔頻率慢很多...
andow1198 iT邦新手 4 級 ‧ 2022-04-08 10:27:39 檢舉
F大,好的,我會檢查看看這個部分,謝謝建議
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

1 個回答

0
海綿寶寶
iT邦大神 1 級 ‧ 2022-04-08 08:36:35
最佳解答

上次看到while true時就在想「早晚會碰到這狀況」
長時間執行的無窮迴圈程式要特別注意
1.memory allocate/free
2.搭配非同步的方式
更別說這種 1ms 的高頻率程式

回歸主題
答案還是在Google
有時間慢慢看吧

andow1198 iT邦新手 4 級 ‧ 2022-04-08 13:17:11 檢舉

海綿大,我明白了,我會針對這部分去查閱資料看看

我要發表回答

立即登入回答