setTimeout, но в течение данного времени

Вы должны убедиться, что зависимости mysql существуют для всех исполнителей. В моей среде я использую maven и указываю такую ​​зависимость внутри моего pom.xml:

<dependency>
  <groupId>mysql</groupId>
  <artifactId>mysql-connector-java</artifactId>
  <version>5.1.42</version>
</dependency>

. Затем я проверяю, что эта зависимость включена в jar приложения (используя плагин maven shade), поэтому что мне не нужно ставить банку на всех исполнителей.

Независимо от того, используете ли вы spark или нет для доступа к mysql через jdbc, вам необходимо убедиться, что mysql-connector доступен в classpath, где бы вы ни выполняли mysql запросов. [1110 ]

7
задан Deniz Dogan 23 April 2009 в 09:45
поделиться

3 ответа

Вам просто нужно найти количество миллисекунд между текущим и вашим объектом даты.

function setToHappen(fn, d){
    var t = d.getTime() - (new Date()).getTime();
    return setTimeout(fn, t);
}
20
ответ дан 6 December 2019 в 06:04
поделиться

Нет, но вы можете легко написать свою собственную функцию. Просто вычислите разницу между настоящим моментом и данным моментом в миллисекундах и вызовите setTimeout с этим.

Примерно так:

 setToHappen = function(fn, date){
  var now = new Date().getTime();
  var diff = date.getTime() - now;
  return setTimeout(fn, diff);
 }

РЕДАКТИРОВАТЬ: убрал дополнительное умножение на 1000, спасибо Крису за указание на это!

6
ответ дан 6 December 2019 в 06:04
поделиться

Поскольку люди говорят о вычислении интервалов времени ожидания с использованием объектов date , следует отметить, что в Firefox , максимальное значение setTimeout () примет для параметра интервала значение 2147483647 (2 ^ 31 - 1), поскольку PRIntervalTime является 32-разрядным целым числом со знаком. Это составляет чуть менее 25 дней.

4
ответ дан 6 December 2019 в 06:04
поделиться
Другие вопросы по тегам:

Похожие вопросы: