Rumah >hujung hadapan web >tutorial js >Analisis mendalam tentang I/O tidak menyekat dalam Node.js
Artikel ini akan memperkenalkan anda kepada I/O yang tidak menyekat dalam Node.js Saya harap ia akan membantu anda!
1 🎜>Input /output merujuk kepada input dan output sistem
2 Perbezaan utama antara tidak menyekat dan menyekat ialah: Dalam proses antara menerima input dan output hasil, Bolehkah anda terus menerima input lain? [Pembelajaran yang disyorkan: "tutorial nodejs"]
Contoh:
Contohnya: Keluar makan
Biasanya ada dua cara untuk keluar makan:1 Pergi ke kantin: beratur untuk makan
Fahami perkara utama I/O tanpa sekatan
untuk melaksanakan Sistem operasi I/O , contohnya: dalam contoh memasak di atas, sistem yang melaksanakan I/O ialah kakitangan perkhidmatan.
Bolehkah I/O lain dilakukan semasa sistem menjalankan operasi I/O
Demonstrasi Kod
Dalam kod sampel kami telah memperkenalkan perpustakaanglob, yang digunakan terutamanya untuk mencari keadaan padanan fail. Untuk butiran, sila lihat https://www.npmjs.com/package/glob
Pertama, kami menggunakan kaedah penyegerakan yang disediakan oleh glob untuk membaca failconst glob = require("glob"); let result = null; result = glob.sync(__dirname + "/**/*"); console.log(result);Hasilnya ialah a
Susun atur fail:
Mari kita lihat masa pelaksanaan operasi penyegerakan ini:const glob = require("glob"); let result = null; console.time("glob"); result = glob.sync(__dirname + "/**/*"); console.timeEnd("glob");Hasil: Kendalian membaca fail akan menyekat proses selama 33 milisaat, yang tidak boleh diterima!
Seterusnya, kami menggunakan kaedah tak segerak untuk membaca fail
let result2 = null; console.time("glob2"); glob(__dirname + "/**/*", (err, res) => { console.log("glob over"); }); console.timeEnd("glob2");Keputusan: Ia mengambil masa sebanyak 4 milisaat untuk membaca fail secara tidak segerak, dan kami juga boleh melakukan operasi lain semasa membaca fail secara tidak segerak.
Video Pengaturcaraan! !
Atas ialah kandungan terperinci Analisis mendalam tentang I/O tidak menyekat dalam Node.js. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!