@Axepec

Mysql в node, асинхронность и завершение работы?

Доброго времени суток, господа!
Пытаюсь оседлать непокорную асинхронную ноду.
Суть вопроса:
Есть скрипт который работает и перебирает циклом, на каждой итерации пишет в базу, завершает работу и висит так как подключение к БД висит, не понимаю как закрыть соединение после завершения цикла. Все время вырубается.
objectGame = [....]
  number = objectGame.length

  db.connect()

  for game in objectGame
     parserGame(game, getResultOneGame)
  
  db.end()

Была попытка сделать так, но не работает...
objectGame = [....]
  number = objectGame.length

  for game in objectGame
     number--
     parserGame(game, getResultOneGame, number)

parserGame = ( ) ->
   ............
   if namber ==1 
      db.end()


+ предстоящая проблема, надо что бы скрипт запускался самостоятельно раз в сутки. Первый раз вникаю в документацию и настройку сервера VPN, поэтому прошу совета как сделать лучше, запускать ноду и пусть по времени его запускает, через setTimeout, или как то лучше настроить на сервере, запуск по расписанию файла
  • Вопрос задан
  • 297 просмотров
Пригласить эксперта
Ответы на вопрос 2
@vshvydky
Судя по описанию вопроса, непонимание идет от незнания языка. Путь простой, учить.
Ответ написан
crazy_leo
@crazy_leo
Frontend Developer
Array.prototype.asyncEach = function (each, done) {
  var i = -1, a = this
  
  function iter() {
    if (++i === a.length) { done && done(); return }
    each.call(a, a[i], iter)
  }

  iter()
}

let objectGame = ["GTA", "CS", "OTHER"]

db.connect()

objectGame.asyncEach(function (item, next) {
	parserGame(item, getResultOneGame)
	next()
}, db.end)
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы