Blocking অপারেশন synchronously চলে এবং শেষ না হওয়া পর্যন্ত একমাত্র JavaScript থ্রেডটি ধরে রাখে — এই সময়ে আর কিছুই চলতে পারে না। Non-blocking অপারেশন কাজটি শুরু করে, সঙ্গে সঙ্গে ফিরে আসে, এবং পরে callback, Promise বা event-এর মাধ্যমে ফলাফল দেয়, ফলে থ্রেডটি অন্য কাজ করার জন্য মুক্ত থাকে।
কেন Node একক-থ্রেডেড হয়েও non-blocking
আপনার JavaScript থ্রেডে চলে যা দ্বারা পরিচালিত। I/O (ফাইল, নেটওয়ার্ক, DNS) -এর হাতে অর্পণ করা হয়, যা ভেতরে OS-এর async সুবিধা এবং একটি ছোট ব্যবহার করে। সেই কাজ থ্রেডের বাইরে চলাকালীন event loop অন্যান্য callback প্রক্রিয়া করতে থাকে। I/O শেষ হলে তার callback সারিবদ্ধ হয়ে চলে।
