Используя этот код:
from time import sleep
import datetime
import sys
def print_and_sleep():
i = 0
while i < 10000:
print('Sleep ' + str(i))
sleep(0.0)
i += 1
print('Slept ' + str(i))
if __name__ == '__main__':
print_and_sleep()
Когда я запускаю его в терминале или в PyCharm, все в порядке, последние строки выводятся следующим образом:
…
Sleep 9995
Sleep 9996
Sleep 9997
Sleep 9998
Sleep 9999
Slept 10000
Но когда Я запускаю его в режиме отладки в коде Visual Studio, он зависает около 7000, иногда немного больше, иногда немного меньше:
…
Sleep 6915
Sleep 6916
Sleep 6917
Sleep 6918
Sleep 6919
При продолжительности сна <= 0,5 он также зависает. Я не тестировал с большими значениями. </p>
Отладчик - тот, который установлен с расширением Python 2020.1.58038 от Microsoft.
Вот моя конфигурация отладки "launch. json" :
{
// Use IntelliSense to learn about possible attributes.
// Hover to view descriptions of existing attributes.
// For more information, visit: https://go.microsoft.com/fwlink/?linkid=830387
"version": "0.2.0",
"configurations": [
{
"name": "Python: Current File",
"type": "python",
"request": "launch",
"program": "${file}",
"console": "internalConsole"
}
]
}
Может ли это быть ошибкой в отладчике или я что-то упустил? Как я мог продолжить расследование?