কম্পিউটার

কেন জাভাস্ক্রিপ্ট মাল্টিথ্রেডিং সমর্থন করে না?


জাভাস্ক্রিপ্ট একক-থ্রেডেড ছিল। এটি একটি ইভেন্ট লুপ নামে পরিচিত ব্যবহার করে চলে৷

ইভেন্ট লুপের একটি সহজ কাজ রয়েছে - কল স্ট্যাক এবং কলব্যাক কিউ নিরীক্ষণ করা। কল স্ট্যাক খালি থাকলে, এটি সারি থেকে প্রথম ইভেন্টটি গ্রহণ করবে এবং এটিকে কল স্ট্যাকের দিকে ঠেলে দেবে, যা কার্যকরভাবে এটি চালায়৷

ব্রাউজারে JS ইভেন্ট লুপে মাল্টিথ্রেডিং সমর্থন করে না কারণ এটি 99.999% ওয়েবসাইটের জন্য প্রয়োজন হয় না। ইভেন্ট লুপ নির্বিঘ্নে সবকিছু পরিচালনা করে।

অবশিষ্ট অ্যাপের জন্য, devs ওয়েব কর্মীদের ব্যবহার করতে পারে। ওয়েব ওয়ার্কার হল ওয়েব কন্টেন্টের পটভূমি থ্রেডে স্ক্রিপ্ট চালানোর একটি সহজ মাধ্যম। ওয়ার্কার থ্রেড ইউজার ইন্টারফেসে হস্তক্ষেপ না করেই কাজ সম্পাদন করতে পারে। উপরন্তু, তারা XMLHttpRequest ব্যবহার করে I/O করতে পারে (যদিও রেসপন্সএক্সএমএল এবং চ্যানেল অ্যাট্রিবিউট সবসময় শূন্য থাকে)। একবার তৈরি হয়ে গেলে, একজন কর্মী জাভাস্ক্রিপ্ট কোডে বার্তা পাঠাতে পারে যা সেই কোড দ্বারা নির্দিষ্ট একটি ইভেন্ট হ্যান্ডলারে বার্তা পোস্ট করে (এবং এর বিপরীতে)। এই নিবন্ধটি ওয়েব কর্মীদের ব্যবহার করার একটি বিস্তারিত ভূমিকা প্রদান করে৷


  1. জন্য ব্যাখ্যা. . লুপ জাভাস্ক্রিপ্ট.

  2. কেন মাইএসকিউএল মিলিসেকেন্ড / মাইক্রোসেকেন্ড নির্ভুলতা সমর্থন করে না?

  3. কেন C++ ফাংশন রিটার্নিং অ্যারে সমর্থন করে না

  4. Python3 - কেন লুপ কাজ করে না?