ฉันเพิ่งอ่านข้อกำหนด Promises / A + เสร็จแล้วและสะดุดกับคำว่า microtask และ macrotask: ดูที่http://promisesaplus.com/#notes
ฉันไม่เคยได้ยินคำศัพท์เหล่านี้มาก่อนและตอนนี้ฉันสงสัยว่าความแตกต่างคืออะไร?
ฉันพยายามค้นหาข้อมูลบางอย่างบนเว็บแล้ว แต่ทั้งหมดที่ฉันพบคือโพสต์นี้จากคลังเก็บ w3.org (ซึ่งไม่ได้อธิบายความแตกต่างให้ฉัน): http://lists.w3.org/Archives /Public/public-nextweb/2013Jul/0018.html
นอกจากนี้ฉันพบโมดูล npm ที่เรียกว่า "macrotask": https://www.npmjs.org/package/macrotask อีกครั้งยังไม่มีการชี้แจงว่าความแตกต่างคืออะไรกันแน่
สิ่งที่ฉันรู้ก็คือมันมีบางอย่างเกี่ยวข้องกับการวนซ้ำของเหตุการณ์ดังที่อธิบายไว้ในhttps://html.spec.whatwg.org/multipage/webappapis.html#task-queue และhttps: //html.spec.whatwg .org / multipage / webappapis.html # perform-a-microtask-จุดตรวจ
ฉันรู้ว่าในทางทฤษฎีฉันควรจะสามารถดึงความแตกต่างออกมาได้ด้วยตัวเองตามข้อกำหนด WHATWG นี้ แต่ฉันแน่ใจว่าคนอื่น ๆ ก็อาจได้รับประโยชน์เช่นกันจากคำอธิบายสั้น ๆ ที่ผู้เชี่ยวชาญให้มา
while (task = todo.shift()) task();