|
|
|
Асинхронная/Отложенная обработка массива
|
|||
|---|---|---|---|
|
#18+
Все привет! Подскажите как сделать такую обработку массива: Код: javascript 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. То-есть в по первому массиву определить количество, и инициализировать асинхронные методы, передать каждому методу содержимое второго уровня массивов ([01,02,03,04,05],[06,07,08,09,10]), но так что-бы вначале был до конца отработан первый, а затем уже передавать следующий. Что-то типа Async + Delay (но без указания времени) Спасибо! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.12.2017, 03:20 |
|
||
|
Асинхронная/Отложенная обработка массива
|
|||
|---|---|---|---|
|
#18+
Что-то типа: Код: javascript 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. Но с задержкой между массивами второго уровня ([36,37,38,39,40] и пр.) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.12.2017, 03:32 |
|
||
|
Асинхронная/Отложенная обработка массива
|
|||
|---|---|---|---|
|
#18+
Полная задача выглядит так: Есть база данных с огромным числом ссылок, я беру часть ссылок и делю ее на 10 потоков (массивов), затем в каждый поток отправляю первую пачку ссылок (например 5), и дождавшись завершения обработки (получив ответ), отправляю следующею и тд. Спасибо! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.12.2017, 03:37 |
|
||
|
Асинхронная/Отложенная обработка массива
|
|||
|---|---|---|---|
|
#18+
nauseous, асинхронность это: setTimeout Web Worker (если логика обработки сложная, то предпочтительный вариант) Promise - в IE отсутствует, но можно подключить любой polyfill например Q.js Следовательно будет один главный поток - координатор, который создаёт / планирует дочерние асинхронные потоки и отслеживает их работу. С промисами может быть полегче, если использовать Promise.all С воркерами и таймаутами надо самому отслеживать завершение работы каждого обработчика и если все отработали, то новую пачку планировать ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.12.2017, 07:24 |
|
||
|
Асинхронная/Отложенная обработка массива
|
|||
|---|---|---|---|
|
#18+
nauseousПолная задача выглядит так: Есть база данных с огромным числом ссылок, я беру часть ссылок и делю ее на 10 потоков (массивов), затем в каждый поток отправляю первую пачку ссылок (например 5), и дождавшись завершения обработки (получив ответ), отправляю следующею и тд. Спасибо! https://developer.mozilla.org/ru/docs/Web/JavaScript/Reference/Statements/async_function ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.12.2017, 10:04 |
|
||
|
|

start [/forum/topic.php?fid=22&fpage=32&tid=1444380]: |
0ms |
get settings: |
10ms |
get forum list: |
15ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
66ms |
get topic data: |
14ms |
get forum data: |
3ms |
get page messages: |
50ms |
get tp. blocked users: |
2ms |
| others: | 237ms |
| total: | 405ms |

| 0 / 0 |

Извините, этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
... ля, ля, ля ...