Pertanyaan yang diberi tag «event-loop»

17
Mengapa setTimeout (fn, 0) terkadang berguna?
Saya baru-baru ini mengalami bug yang agak jahat, di mana kode itu memuat secara <select>dinamis melalui JavaScript. Ini dimuat secara dinamis <select>memiliki nilai yang dipilih sebelumnya. Di IE6, kami sudah memiliki kode untuk memperbaiki yang dipilih <option>, karena kadang-kadang <select>'s selectedIndexnilai akan keluar dari sinkron dengan yang dipilih <option>' s …

7
Loop Acara Nodejs
Apakah ada internal dua loop acara dalam arsitektur nodejs? libev / libuv loop peristiwa javascript v8 Pada permintaan I / O apakah simpul mengantri permintaan ke libeio yang pada gilirannya memberitahukan ketersediaan data melalui peristiwa menggunakan libev dan akhirnya peristiwa-peristiwa tersebut ditangani oleh loop acara v8 menggunakan callback? Pada dasarnya, …


3
Memahami Lingkaran Peristiwa
Saya memikirkannya dan inilah yang saya pikirkan: Katakanlah kita memiliki kode seperti ini: console.clear(); console.log("a"); setTimeout(function(){console.log("b");},1000); console.log("c"); setTimeout(function(){console.log("d");},0); Permintaan masuk, dan mesin JS mulai mengeksekusi kode di atas langkah demi langkah. Dua panggilan pertama adalah panggilan sinkronisasi. Tetapi ketika datang ke setTimeoutmetode, itu menjadi eksekusi async. Tetapi JS segera kembali …

5
Fungsi async dengan + =
let x = 0; async function test() { x += await 5; console.log('x :', x); } test(); x += 1; console.log('x :', x); Jalankan cuplikan kodeSembunyikan hasilLuaskan cuplikan Nilai-nilai yang xdicatat adalah 1dan 5. Pertanyaan saya adalah: mengapa nilai x 5pada log kedua? Jika testdieksekusi setelah x += 1(karena ini …

2
Bagaimana cara mengantri mikrotask jika browser tidak mendukung Janji asli?
Lebih baik menulis kode yang tidak bergantung pada waktu panggilan balik langsung (seperti microtasks vs macrotasks), tetapi mari kita kesampingkan hal itu untuk sementara waktu. setTimeoutmengantri macrotask, yang, setidaknya, menunggu untuk memulai sampai semua mikrotasks (dan mikrotasks yang mereka hasilkan) selesai. Ini sebuah contoh: console.log('Macrotask queued'); setTimeout(function() { console.log('Macrotask running'); …

1
Memicu paralel permintaan HTTP 1k akan macet
Pertanyaannya adalah apa yang sebenarnya terjadi ketika Anda memicu permintaan HTTP keluar 1k-2k? Saya melihat bahwa itu akan menyelesaikan semua koneksi dengan mudah dengan 500 koneksi tetapi bergerak ke atas dari sana tampaknya menyebabkan masalah karena koneksi dibiarkan terbuka dan aplikasi Node akan macet di sana. Diuji dengan server lokal …
Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.