


Kuasai penggunaan setTimeout dan setInterval dengan pantas dalam Node.js_node.js
Node.js, seperti js, juga mempunyai pemasa, pemasa tamat masa, pemasa selang masa, pemasa tepat pada masanya dan fungsi process.nextTick(panggilan balik) untuk melaksanakan penjadualan acara. Hari ini, mari belajar cara menggunakan setTimeout dan setInterval.
1. tetapkan pemasa tamat masa (sama seperti selepas dalam GCD)
Dalam node.js, anda boleh menggunakan kaedah setTimeout(panggilan balik, delayMillSeconds, [args]) terbina dalam node.js. Apabila memanggil setTime(), fungsi panggil balik adalah selepas delayMillSeconds
Melaksanakan .setTime() akan mengembalikan ID objek pemasa, yang boleh dibatalkan dengan menghantar ID kepada clearTimeout(timeoutId) sebelum delayMillSeconds tamat tempoh.
function myfunc(){ console.log("myfunc"); }; var mytimeout=setTimeout(myfunc,1000); clearTimeout(mytimeout);
"C:\Program Files (x86)\JetBrains\WebStorm 11.0.3\bin\runnerw.exe" F:\nodejs\node.exe timer.js Process finished with exit code 0
Jika anda mengulas baris clearTimeout(mytimeout), anda boleh melihat bahawa myfunc() akan dilaksanakan.
"C:\Program Files (x86)\JetBrains\WebStorm 11.0.3\bin\runnerw.exe" F:\nodejs\node.exe timer.js myfunc Process finished with exit code 0
2. setPemasa selang waktu (serupa dengan dispatch_source_t atau NSTimer dalam GCD)
Pemasa selang digunakan untuk melakukan kerja pada selang masa yang tetap Sama seperti setTimeout, node.js mempunyai setInterval terbina dalam(panggilan balik, delayMilliSecond, [args]) untuk mencipta dan mengembalikan ID objek pemasa, dan membatalkannya melalui clearInterval(. ).
/** * Created by Administrator on 2016/3/11. */ function myfunc(Interval){ console.log("myfunc "+Interval); } var myInterval=setInterval(myfunc,1000,"Interval"); function stopInterval(){ clearTimeout(myInterval); //myInterval.unref(); } setTimeout(stopInterval,5000);
Kod di atas adalah untuk mencipta fungsi panggil balik myfunc setInterval.
"C:\Program Files (x86)\JetBrains\WebStorm 11.0.3\bin\runnerw.exe" F:\nodejs\node.exe Interval.js myfunc Interval myfunc Interval myfunc Interval myfunc Interval Process finished with exit code 0
3. Batalkan rujukan pemasa daripada gelung acara
Apabila hanya terdapat fungsi panggil balik pemasa dalam baris gilir acara, jika anda tidak lagi mahu melaksanakannya, anda boleh menggunakan fungsi unref() bagi objek yang dikembalikan oleh setInterval dan setTimeout untuk memberitahu gelung acara agar tidak meneruskan.
Apabila unref() digunakan dalam kombinasi dengan setTimeout, pemasa bebas mesti digunakan untuk membangunkan gelung peristiwa Penggunaan meluas juga akan memberi kesan pada prestasi, jadi gunakannya sesedikit mungkin.
4. Masa pelaksanaan setTimeout dan setInterval adalah tidak tepat
Mereka menambah panggilan balik pada baris gilir acara pada selang waktu tertentu dan pelaksanaannya tidak terlalu tepat
function simpleTimeout(consoleTime) { console.timeEnd(consoleTime); } console.time("twoSecond"); setTimeout(simpleTimeout,2000,"twoSecond"); console.time("oneSecond"); setTimeout(simpleTimeout,1000,"oneSecond"); console.time("fiveSecond"); setTimeout(simpleTimeout,5000,"fiveSecond"); console.time("50MillSecond"); setTimeout(simpleTimeout,50,"50MillSecond");
Hasil keluaran melaksanakan kod di atas beberapa kali akan berbeza.
"C:\Program Files (x86)\JetBrains\WebStorm 11.0.3\bin\runnerw.exe" F:\nodejs\node.exe timer.js 50MillSecond: 51ms oneSecond: 1000ms twoSecond: 2002ms fiveSecond: 5001ms Process finished with exit code 0
Di atas ialah keseluruhan kandungan artikel ini, saya harap ia akan membantu semua orang untuk mempelajari cara menggunakan setTimeout dan setInterval dalam Node.js.

Alat AI Hot

Undresser.AI Undress
Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover
Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool
Gambar buka pakaian secara percuma

Clothoff.io
Penyingkiran pakaian AI

AI Hentai Generator
Menjana ai hentai secara percuma.

Artikel Panas

Alat panas

Notepad++7.3.1
Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina
Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1
Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6
Alat pembangunan web visual

SublimeText3 versi Mac
Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Topik panas



Perkhidmatan Node yang dibina berdasarkan bukan sekatan dan dipacu peristiwa mempunyai kelebihan penggunaan memori yang rendah dan sangat sesuai untuk mengendalikan permintaan rangkaian besar-besaran. Di bawah premis permintaan besar-besaran, isu yang berkaitan dengan "kawalan memori" perlu dipertimbangkan. 1. Mekanisme kutipan sampah V8 dan had ingatan Js dikawal oleh mesin kutipan sampah

Artikel ini akan memberi anda pemahaman yang mendalam tentang memori dan pengumpul sampah (GC) enjin NodeJS V8 saya harap ia akan membantu anda!

Modul fail ialah enkapsulasi operasi fail asas, seperti membaca/menulis/membuka/menutup/memadam fail, dsb. Ciri terbesar modul fail ialah semua kaedah menyediakan dua versi **segerak** dan ** asynchronous**, dengan Kaedah dengan akhiran penyegerakan adalah semua kaedah penyegerakan, dan kaedah yang tidak semuanya adalah kaedah heterogen.

Node 19 telah dikeluarkan secara rasmi Artikel ini akan memberi anda penjelasan terperinci tentang 6 ciri utama Node.js 19. Saya harap ia akan membantu anda!

Memilih imej Docker untuk Node mungkin kelihatan seperti perkara remeh, tetapi saiz dan potensi kelemahan imej itu boleh memberi kesan yang ketara pada proses dan keselamatan CI/CD anda. Jadi bagaimana kita memilih imej Node.js Docker yang terbaik?

Bagaimanakah Node.js melakukan GC (pengumpulan sampah)? Artikel berikut akan membawa anda melaluinya.

Gelung peristiwa ialah bahagian asas Node.js dan mendayakan pengaturcaraan tak segerak dengan memastikan bahawa utas utama tidak disekat Memahami gelung peristiwa adalah penting untuk membina aplikasi yang cekap. Artikel berikut akan memberi anda pemahaman yang mendalam tentang gelung acara dalam Node.

Sebab mengapa nod tidak boleh menggunakan arahan npm adalah kerana pembolehubah persekitaran tidak dikonfigurasikan dengan betul Penyelesaiannya ialah: 1. Buka "Sistem Sifat"; 2. Cari "Pembolehubah Persekitaran" -> "Pembolehubah Sistem", dan kemudian edit persekitaran. pembolehubah; 3. Cari lokasi folder nodejs;
