warren buffet,
Ви делаете мне приятно, шо у ваших тапочек хорошее настроение с моего поста. Ну а по делу, по сути темы? Что-то в принципе не так? Ну таки вот вам лог с временем Кликни! <script> var start = new Date log = []; window.onclick= function (data) { log.push('websocket message ' + (new Date - start)); } function foo(cb) { log.push('foo started ' + (new Date - start)); setTimeout(cb, 5000); log.push('foo ended ' + (new Date - start)); } foo(function () { log.push('inner started ' + (new Date - start)); setTimeout(function () { log.push('inner timeout ended ' + (new Date - start)); console.log(log); }, 5000); log.push('inner ended ' + (new Date - start)); }); </script> И что? и где? и когда? |
Мне вообще пофигу на вложенные таймеры. Если так сделано, значит это говномодель. Я заходил посмотреть напишет ли кто-нить об этом. Ну я и пишу.
|
warren buffet,
Хотелось бы увидеть ваш вариант хронометража этого процесса |
А какая модель?
|
Цитата:
|
Я не умею из кодов делать ТЗ. Это рони умеет.
|
Яростный Меч, таймеры для примера (упрощения), вместо них будут асинхронные задачи. При моем условии, очередь задач будет такой:
1. function (data) { console.log('websocket message'); } 2. setTimeout(cb) 3. setTimeout(function () { console.log('foo'); }); И вывод такой Цитата:
|
То есть жабу скрипучую выучил, а русского не знает. ТЗ сам себе не может написать. Отсюда и все проблемы.
|
warren buffet, я хочу просто понять, как отработает event loop в этой ситуации и всё. Если вы знаете, в каком порядке будут выведены сообщения, напишите. Я задал конкретный вопрос и хочу конкретный ответ. Если не понимаете, что я хочу, уточните, попытаюсь описать подробнее. Но отвечающему нужно знать, как работает event loop в javascript, чтобы вы не тратили мое время, а я ваше.
|
xfg,
Вариант лога хронометража из примера в пост 12 0:"foo started 0" 1:"foo ended 0" 2:"websocket message 2107" 3:"websocket message 2355" 4:"websocket message 2618" 5:"websocket message 2899" 6:"websocket message 3514" 7:"websocket message 3786" 8:"websocket message 4338" 9:"websocket message 4578" 10:"inner started 5001" 11:"inner ended 5001" 12:"websocket message 5434" 13:"websocket message 5674" 14:"websocket message 7050" 15:"websocket message 8155" 16:"websocket message 8330" 17:"websocket message 9138" 18:"inner timeout ended 10001" 19:"websocket message 10218" 20:"websocket message 10467" |
Часовой пояс GMT +3, время: 06:22. |