2017-01-12 3 views
5

Я использую Python и pygame для задачи управления и автоматизации. Информация с датчика отображается с помощью pygame, затем записывается в другом месте.
Чтобы ограничить частоту кадров, я использую отметку часов pygame.Pygame Clock - Как долго он может работать?

Поскольку это встроенное приложение, процесс может работать в течение нескольких месяцев. Будут ли часы pygame перестать работать, т. Е. Если он сохранит ms как целое (длинное целое), когда у него закончится время, и может ли он справиться с возвратом в раунд до 0 (или, что еще хуже, минус)?

Если срок его службы не исчерпан? Кажется, я помню, что первая версия Win95 разбилась через 4 дня по этой причине!

Я являюсь usisg Python2.7 на малине Pi ver 3, если это актуально.

ответ

2

Python 2.7.x имеет два целых типа: «простые целые числа» и «длинные целые числа». Первые являются в основном long int s в C, которые должны быть не менее 32 бит. Последние не ограничены. Так как вычисления автоматически преобразуются в длинные, если необходимо, вы должны быть в порядке.

Пример:

Python 2.7.10 (default, May 23 2015, 09:44:00) [MSC v.1500 64 bit (AMD64)] on win32 
>>> x=1<<30 
>>> x 
1073741824 
>>> type(x) 
<type 'int'> 
>>> x+=1<<30 
>>> x 
2147483648L 
>>> type(x) 
<type 'long'> 
+0

ОК, так до тех пор, пока не будет ничего внутреннего в библиотеке Pygame о том, что таймер мс является INT, она будет работать вечно. Если это фиксированное 32-битное целое число, которое даст мне время выполнения 25 или 50 дней (в зависимости от того, подписано ли оно), если метод clock.tick не обрабатывает часы, возвращающиеся к нулю (или -2^31) должным образом). – user7409496

 Смежные вопросы

  • Нет связанных вопросов^_^