Size: a a a

pyTelegramBotAPI.talks.ru

2020 March 05

⁠А

⁠⁠⁠ Арсений 🛠️ in pyTelegramBotAPI.talks.ru
rink0
Что ты такое
Хуй знает, сам ещё не разобрался
источник

r

rink0 in pyTelegramBotAPI.talks.ru
ヽ༼ ಠ益ಠ ༽ノ
import time
import threading
next_call = time.time()
def your_func():
......
   next_call = next_call+900
   threading.Timer( next_call - time.time(), your_func).start()
your_func()
А мне за такой код, дяди постарше по ногам моим же костылём не ударят?
источник

ヽ༼ ಠ益ಠ ༽ノ in pyTelegramBotAPI.talks.ru
⁠⁠⁠ Арсений 🛠️
Заметка сохранена
Ну типа может и неправильно
Просто у меня был случай когда нужно было прям точно запускать функцию каждую минуту
А time.sleep() с учётом времени  выполнения функции давал по итогу сдвиг почти на секунду каждый круг
Эта же конструкция работала как надо
источник

EA

Eugene Artesius Pasko in pyTelegramBotAPI.talks.ru
ヽ༼ ಠ益ಠ ༽ノ
import time
import threading
next_call = time.time()
def your_func():
......
   next_call = next_call+900
   threading.Timer( next_call - time.time(), your_func).start()
your_func()
Што? Зачем?
источник

EA

Eugene Artesius Pasko in pyTelegramBotAPI.talks.ru
def timer_start():
   threading.Timer(900.0, timer_start).start()
timer_start()

Вот как у меня написано
источник

ヽ༼ ಠ益ಠ ༽ノ in pyTelegramBotAPI.talks.ru
Eugene Artesius Pasko
def timer_start():
   threading.Timer(900.0, timer_start).start()
timer_start()

Вот как у меня написано
Ну так даже лучше
источник

r

rink0 in pyTelegramBotAPI.talks.ru
Eugene Artesius Pasko
def timer_start():
   threading.Timer(900.0, timer_start).start()
timer_start()

Вот как у меня написано
Не совсем понимаю как это работает, где мне вписать запуск функции🤔
источник

EA

Eugene Artesius Pasko in pyTelegramBotAPI.talks.ru
rink0
Не совсем понимаю как это работает, где мне вписать запуск функции🤔
Там, где тебе нужно запускать таймер
источник

ヽ༼ ಠ益ಠ ༽ノ in pyTelegramBotAPI.talks.ru
rink0
Не совсем понимаю как это работает, где мне вписать запуск функции🤔
your func() это твоя функция
источник

EA

Eugene Artesius Pasko in pyTelegramBotAPI.talks.ru
Хоть вне функций, последней строкой просто бахнуть
источник

r

rink0 in pyTelegramBotAPI.talks.ru
Дак по сути это тоже не будет работать параллельно
источник

EA

Eugene Artesius Pasko in pyTelegramBotAPI.talks.ru
?
источник

ヽ༼ ಠ益ಠ ༽ノ in pyTelegramBotAPI.talks.ru
?
источник

EA

Eugene Artesius Pasko in pyTelegramBotAPI.talks.ru
Оно каждые 15 минут перезапускает себя
источник

r

rink0 in pyTelegramBotAPI.talks.ru
Ладно
источник

П

Пасюк Лошадкин in pyTelegramBotAPI.talks.ru
rink0
Дак по сути это тоже не будет работать параллельно
threading значит будет
источник

r

rink0 in pyTelegramBotAPI.talks.ru
Eugene Artesius Pasko
Там, где тебе нужно запускать таймер
def timer_start():
   threading.Timer(900.0, timer_start).start()
   myfunc()
timer_start()
источник

r

rink0 in pyTelegramBotAPI.talks.ru
туплю, так?
источник

EA

Eugene Artesius Pasko in pyTelegramBotAPI.talks.ru
rink0
def timer_start():
   threading.Timer(900.0, timer_start).start()
   myfunc()
timer_start()
Да
источник

r

rink0 in pyTelegramBotAPI.talks.ru
уже протестил
источник