#plotly #plotly-dash #plotly-python
#plotly #plotly-dash #plotly-python
Вопрос:
Я хочу выполнить обратный вызов, чтобы обновить график как можно быстрее. В настоящее время я использую dcc.Interval(...)
.
Для выполнения обратного вызова обычно требуется 1-3 секунды (он обновляет график).
Если я установил dcc.Interval(id='myid', interval=1000)
, обратные вызовы выполняются слишком быстро, и график в основном зависает. Кажется, что каждый последующий обратный вызов прерывает выполнение рендеринга, и все заедает.
Моя цель — просто запускать обратный вызов как можно чаще. Это означает разное время в зависимости от условий сети, и я не хочу устанавливать интервал с наименьшим общим знаменателем.
Plotly очень стремится избегать циклических зависимостей, поэтому нет очевидного способа выполнить бесконечный цикл с обратными вызовами.
Ответ №1:
Сообщение на форуме plotly затрагивает этот вопрос:
https://community.plotly.com/t/prevent-re-entrant-callbacks/17393
Таким образом, он использует исключение plotly PreventUpdate
и общие блокировки, чтобы определить, когда запускается обратный вызов до завершения предыдущего обратного вызова.
В этом сообщении на форуме есть краткое обсуждение того, что это не лучший вариант использования Plotly / Dash.