JavaScript 的任务调度机制是基于 事件循环(Event Loop) 的,它管理了不同类型的任务队列。总的来说,任务调度机制涉及到三种主要的任务队列:
- 同步任务(Synchronous Tasks)
- 微任务(Microtasks)
- 宏任务(Macrotasks)
在某些情况下,我们还可以提到 交互队列 和 延迟队列,它们可以视为宏任务的一部分。以下是它们的详细介绍、执行顺序和示例:
1. 同步任务(Synchronous Tasks)
- 同步任务是指代码中按顺序执行的任务。这些任务会先被执行,直到执行栈清空。
- 特点:同步任务是JavaScript执行的主要任务,必须按顺序执行,无法中断。
执行顺序:
- 同步任务先执行。
示例:
console.log('Start');
console.log('End');
输出顺序:
Start
End
2. 微任务(Microtasks)
微任务是指那些在同步任务执行完后、下一个宏任务开始前执行的任务。微任务的优先级比宏任务高,因此它们会在当前栈清空后立刻执行。
常见的微任务:
Promise
的.then()
、.catch()
、.finally()
回调queueMicrotask()
MutationObserver
执行顺序:
- 执行同步任务。
- 执行所有微任务,直到微任务队列清空。
- 然后才会开始执行宏任务。
示例:
console.log('Start');
setTimeout(() => {
console.log('Timeout 1');
}, 0);
Promise.resolve().then(() => {
console.log('Promise 1');
});
setTimeout(() => {
console.log('Timeout 2');
}, 0);
Promise.resolve().then(() => {
console.log('Promise 2');
});
console.log('End');
输出顺序:
Start
End
Promise 1
Promise 2
Timeout 1
Timeout 2
执行过程:
- 先执行同步代码:
Start
和End
。 - 然后执行微任务队列中的任务:
Promise 1
和Promise 2
。 - 最后执行宏任务队列中的任务:
Timeout 1
和Timeout 2
。
- 先执行同步代码:
3. 宏任务(Macrotasks)
宏任务包括所有的异步任务和UI更新任务。它们的执行顺序是按队列顺序来执行的,每次执行一个宏任务。
常见的宏任务:
setTimeout
、setInterval
I/O 操作
(例如文件读取、网络请求等)- 用户交互事件(点击、键盘输入等)
执行顺序:
- 执行同步任务。
- 执行所有微任务。
- 执行宏任务(例如
setTimeout
、事件监听等)。
示例:
setTimeout(() => {
console.log("Timeout 1");
}, 0);
setTimeout(() => {
console.log("Timeout 2");
}, 0);
console.log("Start");
输出顺序:
Start
Timeout 1
Timeout 2
执行过程:
- 先执行同步代码:
Start
。 - 然后执行宏任务队列中的任务:
Timeout 1
和Timeout 2
。
- 先执行同步代码:
4. 交互队列(Interaction Queue)
交互队列包含与用户交互相关的事件,如点击、输入框事件等。这些事件会作为宏任务的一部分,通常是在宏任务执行后、微任务执行前执行。
常见的交互队列事件:
click
、keydown
、input
等。
执行顺序:
- 宏任务中的异步任务完成后,事件循环会处理交互队列中的任务。
示例:
document.body.addEventListener('click', () => {
console.log('Click event');
});
执行过程:
- 用户点击页面后,点击事件会被加入到交互队列,并在下一轮事件循环中执行。
5. 延迟队列(Delayed Queue)
延迟队列实际上是宏任务队列的一部分,专门处理带有延迟时间的任务(如 setTimeout
和 setInterval
)。这些任务会在延迟时间到期后进入队列,并作为宏任务执行。
常见的延迟队列任务:
setTimeout
、setInterval
执行顺序:
- 延迟队列的任务是宏任务的一部分,会在当前宏任务执行完后、下一个宏任务之前执行。
示例:
setTimeout(() => {
console.log('Delayed Timeout');
}, 1000);
执行过程:
- 任务会在大约 1000 毫秒后被加入宏任务队列。
总结:JavaScript 任务调度机制的队列
JavaScript 主要通过事件循环管理不同的任务队列,每种队列的任务执行顺序如下:
- 同步任务:首先执行,执行栈中的代码。
- 微任务队列:在同步任务执行后、宏任务之前执行。优先级较高。
- 宏任务队列(包含延迟队列):在微任务执行完后执行。宏任务包含
setTimeout
、setInterval
等异步任务。 - 交互队列:处理与用户交互相关的事件,通常在宏任务和微任务之间执行。
执行流程:
- 执行同步任务。
- 执行所有微任务,直到微任务队列为空。
- 执行交互队列中的任务。
- 执行宏任务队列中的任务(如延迟队列中的
setTimeout
回调)。
示例总结:
console.log("Start");
setTimeout(() => {
console.log("Timeout 1");
}, 0);
Promise.resolve().then(() => {
console.log("Promise 1");
});
document.body.addEventListener('click', () => {
console.log("Click Event");
});
setTimeout(() => {
console.log("Timeout 2");
}, 0);
console.log("End");
输出顺序:
Start
End
Promise 1
Timeout 1
Click Event
Timeout 2
事件循环在处理任务时,会先执行同步代码,然后清空微任务队列,接着处理交互队列中的任务,再执行宏任务队列中的任务。
We're a group of volunteers and starting a new scheme in our
community. Your site provided us with valuable info to work on. You have done a formidable job and our whole community
will be thankful to you.
Help me get 1000 subscribers - https://t.me/+8YD4vOIJpnk4ZmVh
In my channel I share information about promotion, marketing, crypto and personal life.
Thank you, good person!
Hebogs
Китайский производитель электромобилей BYD внедрил модернизированную систему помощи водителю для большинства своих моделей машин без дополнительных затрат, что привело его акции к новому пределу.
местные покупатели в настоящее время могут использовать брендовую систему помощи водителя система Глаз Бога автопроизводителя в машинах ценой всего лишь 69800 юаней ( 9555 USD).
Эксперты отмечают, что этот шаг сможет еще усилить разжечь жесткую ценовую конкуренцию в самом большом на мировом автомобильном рынке.
Согласно данным Refinitiv, ценные бумаги BYD подскочили более чем на 4% до нового предела, когда во вторник начались торги в Гонконге. В последний раз их акции покупались по 330 гонконгских USD (42 доллара).
2025 год будет первым годом умного управления для всех, — заявил глава BYD Ван на мероприятии в центре в Шэньчжэне в понедельник.
Ван предсказал, что интеллектуальное управление высокого класса станет неотъемлемой особенностью автомобилей, подобно ремням безопасности и подушкам безопасности, в течение будущих 3 лет.
Ранее система God’s Eye, преподнесенная в 2023 году для содействию в управлении транспортного средства, предлагалась только в автомобилях BYD ценой выше 30 000 долларов.
BYD заняла шестое место по мировым продажам автомобилей, а китайская Geely Auto оказалась на 10-й строчке, сказал Чуанфу на сцене, ссылаясь на данные Cailianshe, связанной с государством медиакомпании. Она также доминировала на местном рынке, на долю которой в 2024 году приходилось более 32% от всего объема продаж новых электрических автомобилей, по данным Китайской ассоциации легковых автомобилей.
Ту Ле, руководитель и директор консалтинговой компании Sino Auto Insights, заявил, что действия BYD ставят|заводят конкурентов на пятки из-за доступной цены.
Tesla, основной соперник BYD, выпустила похожие функции полного автономного вождения в США за ежемесячную оплату в размере 99 долларов в месяц или разовый взнос в размере 8000 USD. Компания ожидает одобрения контролирующих органов для старта тестирования на китайском рынке.
Данную новость опубликовало агентство Агентство новостей Агентство [url=https://dolson.ru]dolson.ru[/url]
Hello there, There's no doubt that your website
may be having browser compatibility issues. Whenever I look
at your web site in Safari, it looks fine however when opening in I.E.,
it's got some overlapping issues. I simply wanted to provide you with a quick heads up!
Besides that, wonderful website!
I was curious if you ever considered changing the layout of your site?
Its very well written; I love what youve got to say.
But maybe you could a little more in the way of content so people could connect
with it better. Youve got an awful lot of text for only having
1 or 2 pictures. Maybe you could space it out better?
Будущая главная чета США запустила пару мем-монет в преддверии инаугурации новоизбранного президента Дональда Трампа, которые уже оцениваются огромные суммы на бумаге. Но время запуска цифрового актива Трампа, всего за недельку до принятия полномочий, встревожило экспертов по этике и даже отдельных участников цифровой экономики.
Однако актив новоизбранного президента обвалилась до $40 после того, как Мелания анонсировала свою личный токен. С тех пор она вернула часть этих убытков и торговалась около $60 утром в понедельник. $MELANIA торговалась чуть более $12 утром в понедельник, согласно криптоплатформе.
$TRUMP — главный цифровой актив, санкционированная новым президентом, который когда-то осудил биткоин, назвав его «основанным на воздухе».
Трамп приобрёл значительную помощь криптоиндустрии на этих голосованиях после того, как он одобрил токены и обязался Америке «мировую столицу крипты».
В июле 2024 года Трамп заявил на крупнейшем съезде криптовалют и с тех пор выбрал Говарда Лютника, который помогает криптовалютную компанию Tether, руководителем ведомства по торговле. Лютник — один из многих энтузиастов цифровых активов, утверждённых в следующую администрацию Трампа.
Новость поведало агентство Новостное агентство Новостное агентство Агентство новостей [url=https://gornoid.ru/contacts.html]World gornoid.ru[/url]
Делимся мнениями. Это достойное нововведение или безполезное?
What's up mates, its wonderful piece of writing regarding educationand completely explained, keep it up all the
time.
Tender thanks you championing sharing this!
https://dirtyblowjob.info
It’s ever after inviting to finance different perspectives on this topic.
I esteem the stab and fine points stake into this list inform – it provides valuable insights and definitely gives me something to dream about.
Looking forward to more theme like this!
Perceive also - https://newsweetlove.com
Кошельки тоже нуждаются в каникулах. Новый исследование о Travel Trends 2025 по сравнению с системой поиска авиабилетов выявил пункты назначения с самыми большими уменьшениями цен авиабилеты в Соединенных Штатах за последний год.
Лидеры списка—Средиземноморский курортный город французская Ницца, популярный курорт для путешественников Ривьеры. Тарифы в городе упали на двадцать семь процентов в первой половине 2024 года, по сравнению с тем же периодом ранее.
Если это солнце Кариб, вы преследуете, то стоимости в Кастри, Сент-Люсии (№ 2) и Барбадос (№ 3), снизились на 25% и 24 процента соответственно.
Год спустя после его катастрофического тремора в двадцать двадцать третьем году, Марокко восстанавливает свою индустрию туризма и встречает туристов. Стоимость в своем столичном городе, Рабат, Марокко, пошли вниз на двадцать четыре процента.
Мир животных
Этот год оказался активным приключениями для наших животных.
Неделя медведям Северной Аляски в рамках традиции. В волнующем и индивидуальном матче для мести самица медведя сбила последнего соперника в игре - возвращении погубившего одного из ее детенышей летом прошлого года, чтобы защитить свой титул на две тысячи двадцать четвертый.
Первоисточник [url=https://rutorg.top/w001-splash-2s.html]rutorg.top[/url]
I am not sure where you are getting your information, but good topic.
I needs to spend some time learning much more or understanding more.
Thanks for excellent info I was looking for this information for my mission.
Где Купить Мефедрон? САЙТ - KOKAIN.VIP Сколько стоит Мефедрон? САЙТ - KOKAIN.VIP
КУПИТЬ НА САЙТЕ - https://kokain.vip/
ЗАКАЗАТЬ ЧЕРЕЗ ТЕЛЕГРАММ- https://kokain.vip/
ДОСТАВКА В РУКИ - https://kokain.vip/
ЗАКЛАДКА ОНЛАЙН - https://kokain.vip/
ССЫЛКА В ТЕЛЕГРАММ - https://kokain.vip/
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Теги поисковых слов для запроса "Мефедрон в Москве"
Где Купить Мефедрон в Москве? Как Купить закладку Мефедрона в Москве? Цена на Мефедрон в Москве? Купить Мефедрон с Доставкой в руки в Москве?
Сколько Стоит Мефедрон в Москве? Почему так просто Купить Мефедрон закладкой в Москве? Гарантия на Мефедрон в Москве? Купить Мефедрон с Гарантией?
Круглосуточные магазины Мефедрона в Москве? Оптовые и Розничные продажи Мефедрона в Москве? Купить Мефедрон в Москве через Телеграмм? Лучший Мефедрон Купить?
Купить Мефедрон в Москве по скидке и хорошей цене? Купить Мефедрон в Москве через свой телефон или ноутбук можно легко? Сколько где Мефедрона стоит цена?
Как купить Мефедрон в Москве если нет очень много денег и нужно угостить девушку? С кем можно разделить грамм Мефедрон в Москве?
Не плохой или хороший Мефедрон можно Купить в Москве на своей улице закладкой? Девушка угостила меня Хорошим Мефедроном в Москве из магазина?
Мои друзья любят употреблять Мефедрон в Москве днем вечером и ночью и потом не спят целые сутки под Мефедрон в Москве? Мой любимый Мефедрон на планете купить?
Мефедрон в Москве можно заказать с доставкой в руки через хорошего курьера прямо в теллеграмм и его привезут в руки без палева в Москве?
Мой Мефедрон в Москве можно на выставке показывать потому что такой Мефедрон в Москве никто и никогда не виде подобного качества тут просто нет?
Как хороший Мефедрон в Москве качественный провозят через границу из других стран чтоб люди радовались качеству Мефедрон в Москве? Очень купить Мефедрон советовали!
Как ведут себя люди когда употребляют хороший качественный Мефедрон в Москве чтоб не спалиться в черных очках, которые цветом как Мефедрон в Москве?
Могут ли принять мусора за Мефедрон в Москве если узнают что ты берешь его анонимно на сайте с гарантией который много лет продает Мефедрон в Москве?
Все люди по разному реагируют и задают себе вопрос, на который уже есть давно ответ - Как же купить Мефедрон в Москве если хочеться качественного Мефедрона?
Дополнительные теги - Купить Шишки в Москве, Купить экстази в Москве , Купить гашиш в Москве, Купить мефедрон в Москве, Купить экстази в Москве, Купить МДМА в Москве,
Купить лсд в Москве, Купить Амфетамин в Москве, Купить скорость альфа ПВП в Москве, Купить гидропонику в Москве, Купить метамфетамин в Москве, Купить эйфоретики в Москве,
Купить закладки в Москве, Купить ШИШКИ закладкой в Москве , Купить Стимуляторы в Москве, Купить Галлюцыногены в Москве, Купить Наркотики закладкой в Москве. Тег окончен