А тут прикол в другом. Если не очистить set Interval функция будет себя вызывать вечно. По этому set Time Out написал я зря. И понимаю что нужно спать :write:
|
koeshiro, я понял)) Но Ваш пример отличается от моего только тем, что у меня пример выполняется бесконечно, а Вы останавливаете выполнение функции заданным числом "num" - количеством раз.
Меня ведь интересует именно сам цикл, а не его остановка) А как же на счет setInterval? Почему бы не использовать эту функцию. Ведь ее природа основывается на предложенном Вами алгоритме |
Dorian_bs, ну таки я говорил. что к чему) В любом случае придёться делать что-то что не даст заполнить весь ОЗУ =)
|
Я протестировал. Создал пустую страницу в Google Chrome.
В диспетчере задач хром показывает, что пустая страница есть 8000кб. памяти. Если использовать цикл for in (i < 1000) в setInterval 200mls, потребление памяти возрастает до 13 324кб. Озу 90-94. Если создать 1000 setInterval с 200mls - потребление памяти возрастает до 53 181кб. Озу 90-95. В первом случае вкладку не удается просто перезагрузить. Все время ожидание. Во втором - страница не так сильно глючит и с ней можно работать. Даже не знаю, что все же лучше. Ибо ОЗУ жрет и там и там |
koeshiro, спасибо за помощь)
Товарищи, есть еще какие либо соображения по этому поводу? |
Dorian_bs,
Можно подчищать память в ходе выполнения. |
Что Вы имеете ввиду?
|
Цитата:
обзор |
nerv_, спасибо, но вопрос не в этом. На данный момент я использую websocket nodejs. Суть вопроса не в реализации передачи данных, а в методе циклической отправки сформированного пакета
|
Вообщем я остановился на варианте создания setInterval для каждого игрока. Да, это будет есть память, но избавит от возможный коллизий в случае, если for не успеет обработать каждого игрока за интервал установленный в setInterval.
Всем огромное спасибо!) |
Часовой пояс GMT +3, время: 00:59. |