О наборе flashInterval api - PullRequest
       2

О наборе flashInterval api

0 голосов
/ 05 июля 2010
  setInterval(func, 1000)

Что если func займет больше времени, чем 1000 мс, будет ли следующий вызов ждать 1000 мс или выполнится сразу?

Ответы [ 2 ]

1 голос
/ 05 июля 2010

Среда выполнения Flash однопоточная. Поэтому, когда есть какое-либо действие (вызов функции), оно ставится в очередь уже ожидающих действий. Таким образом, в любой момент времени выполняется только одна функция.
В вашем случае, если ваша функция func требует более 1000 мсек выполнения, т.е. если func находится между ее выполнением и интервал времени истекает, новый вызов до func в очереди. Поэтому, как только первый func будет завершен, будет выбран следующий вызов, если он есть. В этом случае это будет еще один func звонок. Если до этого были вызваны другие слушатели, то они будут вызываться по порядку.

0 голосов
/ 05 июля 2010

Метод обратного вызова будет вызываться каждые 1000 мсек, если больше ничего не происходит.

У меня есть половина кода, написанного для разработки способа вызова интервала каждые 1000 мс, и в зависимости от логического значения интервал повторно вызывается или удаляется сам. Дайте мне знать, если вы хотите, чтобы я вставил.

Редактировать: см. Ответ от bhups, намного лучшее описание - все же, дайте мне знать, если вы хотите тот код, который я упомянул.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...