У меня есть приложение react-redux. В моем хранилище redux есть 2D boolean list i.e. parking, где каждая ячейка инициализируется некоторым случайным целым числом.
Я хочу запустить фоновый процесс, который запускается каждую секунду, и выполнить следующую функцию
function substractParking(){
for(all cells i,j in array){
if (parking[i][j] !== 0){
parking[i][j] -= 1
}
}
}
Я подумал об этом и нашел два возможных решения.
Каждую секунду я отправляю действие, которое выполнит приведенный выше код, но это замедлит работу моего приложения. Я могу это сделать.
Каким-то образом я могу сохранить класс в магазине redux, который будет автоматически запускать этот код каждую секунду, т.е. в моем магазине redux будет класс, а не двумерный логический массив. Но я не знаю, как это сделать.
Какой-то фоновый процесс, но опять же, я не знаю, как создать фоновый процесс в react-redux.
Как лучше всего это сделать? Я могу закодировать только решение 1, и я не знаю, как можно достичь решения 2 и 3.





(1) - вот что для меня имеет смысл. Замедлить приложение, а лучше сказать, нагружать ЦП? Есть ли способ сделать это без загрузки процессора?
загрузить ЦП. Я спрашиваю здесь, есть ли лучший способ выполнять фоновые задачи, чем просто вызывать действие каждую секунду.
Но в своем вопросе вы написали, что «Я хочу запустить фоновый процесс, который запускается каждую секунду, и выполнить следующую функцию» ... Я думал, что это ваше требование ...
А как насчет
web-worker?