Blocking IO là gì?
Blocking IO là có nghĩa là xử lý đơn luồng. Thông thường một thao tác máy tính chỉ xảy ra khi các thao tác trước đó đã hoàn thành. Một ví dụ điểm hình cho Blocking IO là xử lý hàng đợi, mỗi phần tử khi thêm vào hàng đợi sẽ phải chờ các phần tử trước nó đã thêm thành công thì nó mới được thêm.
Khi lập trình sử dụng blocking IO sẽ dễ quản lý được luồng xử lý vì nó tuân thủ nguyên tắc có thứ tự, điều này khác hoàn toàn với None-blocking IO.
Ví dụ: Trong Javascript
function an(){ console.log('an'); } function uong(){ console.log('uong'); } function dingu() { console.log('di ngu'); } an(); uong(); dingu(); // Kết quả an - uong - di ngu
Thứ tự xử lý trong ví dụ này phải đúng theo nguyên tắc chạy từ trên xuống, hàm trên xử lý xong rồi mới chạy xuống hàm phia dưới. Cái này ta gọi là Blocking IO.
Bài viết này được đăng tại [free tuts .net]