この記事は公開から1年以上経過しています。
VSCode上でPython(3.10)のsounddeviceの非同期コールバック関数内にブレークポイントを設定したところ、ブレークポイントが機能しなかったため、そのときの対応についての備忘録。
対応
Python 3.7以降で使用可能なビルトイン関数のbreakpoint()
を使用する。
import sounddevice as sd
def callback(indata, frames, time, status):
breakpoint() # ブレークさせたい場所にこの行を追加
# 〜〜 処理 〜〜
with sd.InputStream(
channels=2,
dtype='float32',
callback=callback):
# 〜〜 処理 〜〜
実行結果
VSCodeでブレークポイントを設定していなくてもbreakpoint()
関数でブレークするようになりました。
参考ウェブサイトなど
- Python Documentation
pdb — Python デバッガ
以上です。