Node.js-এ কিভাবে টাইমআউট বিহাইন্ড করবেন?

Node Js E Kibhabe Ta Ima A Uta Biha Inda Karabena



Node.js-এ, “ টাইমার ” মডিউল একটি নির্দিষ্ট সময়ের ব্যবধানের পরে তার বিভিন্ন অন্তর্নির্মিত পদ্ধতির সাহায্যে যে কাজটি সম্পাদন করা যেতে পারে তার সময়সূচী নির্ধারণ করে। এই মডিউলটি একটি ' সময় শেষ ' ক্লাস যা ডিফল্টরূপে অভ্যন্তরীণভাবে তৈরি করা হয় যখন নির্ধারিত হয় ' সেট টাইমআউট ()' অথবা ' setInterval ()' চালায়। নির্দিষ্ট পদ্ধতিগুলি বন্ধ বা বাতিল হওয়ার পরেও এই ক্লাসটি কাজ চালিয়ে যাচ্ছে। সুতরাং, ব্যবহারকারীকে এটি বন্ধ করতে হবে যার কারণে ইভেন্ট লুপ বন্ধ হতে পারে।

এই লেখাটি দেখাবে কিভাবে Node.js-এ টাইমআউটগুলিকে পিছনে ফেলে দেওয়া যায়।







Node.js-এ কিভাবে টাইমআউট বিহাইন্ড করবেন?

শিডিউলিং পদ্ধতিগুলি বাতিল করার পরে ইভেন্ট লুপের কার্য সম্পাদন ছেড়ে যেতে বা বাতিল করতে, ' unref ()' এবং ' রেফ ()' পদ্ধতি। দ্য ' unref ()' পদ্ধতি অনুরোধ করে ' সময় শেষ ” ইভেন্ট লুপ এক্সিকিউশন নিষ্ক্রিয় করতে আপত্তি কারণ এটির আর প্রয়োজন নেই। অন্যদিকে, “ রেফ ()' পদ্ধতি উল্লেখ করে ' টাইমার ' কল করার পরে এটি সক্রিয় বা নিষ্ক্রিয় কিনা তা পরীক্ষা করার জন্য বস্তু ' unref ()' পদ্ধতি।



দ্য ' unref নির্দিষ্ট কলব্যাক ফাংশন কল করার আগে চালানোর জন্য অন্য কোন প্রক্রিয়া না থাকলে ()' পদ্ধতিটি ইভেন্ট লুপের কার্য সম্পাদন বন্ধ করে। সব শেষ হয়ে গেলে, ' রেফ ()' পদ্ধতি যাচাই করে কিনা ' সময় শেষ অবজেক্ট নিষ্ক্রিয় করা হয়েছে বা না।



'রেফ()' পদ্ধতির সিনট্যাক্স

এর কাজ ' রেফ ()' পদ্ধতি তার নিম্নোক্ত সাধারণীকৃত সিনট্যাক্সের উপর নির্ভর করে:





সময় শেষ. রেফ ( )

'unref()' পদ্ধতির সিনট্যাক্স

এর কাজ ' process.unref ()' পদ্ধতিটি তার নীচে লিখিত মৌলিক সিনট্যাক্সের উপর নির্ভর করে:

সময় শেষ. unref ( )

পরামিতি : উপরের উভয় সংজ্ঞায়িত-সিনট্যাক্সের তাদের প্রধান কার্যকারিতা সম্পাদন করার জন্য কোন অতিরিক্ত যুক্তির প্রয়োজন নেই।



রিটার্ন মান: দ্য ' রেফ ()' এবং ' unref ()' পদ্ধতি একটি প্রদান করে কোনোটিই নয় ” প্রত্যাবর্তিত প্রকার।

উদাহরণ: 'টাইমআউট' অবজেক্ট বন্ধ করার জন্য 'রেফ()' এবং 'আনরেফ()' পদ্ধতি প্রয়োগ করা

এই উদাহরণটি 'এর ব্যবহারিক বাস্তবায়ন দেখায় রেফ ()' এবং ' unref ()' ইভেন্ট লুপের ডিফল্ট আচরণ নিয়ন্ত্রণ এবং অভ্যন্তরীণভাবে তৈরি করা বাতিল করার পদ্ধতি সময় শেষ বস্তু:

ছিল সময় শেষ = সেট টাইমআউট ( ফাংশন আমার মজা ( ) {
কনসোল লগ ( 'টাইমআউট 1000ms এর জন্য সেট করা হয়েছে' , 1000 ) ;
} ) ;
কনসোল লগ ( '2।' , সময় শেষ. আছে রেফ ( ) ) ;
কনসোল লগ ( '৩।' , সময় শেষ. রেফ ( ) ) ;
কনসোল লগ ( '4।' , সময় শেষ. unref ( ) ) ;
কনসোল লগ ( '5।' , সময় শেষ. আছে রেফ ( ) ) ;
সময় শেষ. রেফ ( )
কনসোল লগ ( '6।' , সময় শেষ. আছে রেফ ( ) ) ;
সাফ টাইমআউট ( সময় শেষ ) ;
কনসোল লগ ( '7. সময়সীমা সাফ করা হয়েছে!' ) ;

উপরের কোড লাইনগুলির ব্যাখ্যা নীচে লেখা হয়েছে:

  • প্রথমত, ' সময় শেষ 'বস্তু প্রয়োগ করে' সেট টাইমআউট ()' পদ্ধতি যা নির্দিষ্ট সময়ের বিলম্বের পরে নির্দিষ্ট টাস্ক স্টেটমেন্ট প্রদর্শন করার জন্য একটি ফাংশনকে সংজ্ঞায়িত করে। এই পদ্ধতিটি একটি ' সময় শেষ অভ্যন্তরীণভাবে বস্তু।
  • পরবর্তী, ' console.log ()' পদ্ধতি ব্যবহার করে ' আছে রেফ ()' পদ্ধতি পরীক্ষা করার জন্য ' সময় শেষ ()' বস্তুর অস্তিত্ব আছে বা নেই। এটি একটি আউটপুট হিসাবে একটি 'বুলিয়ান' মান প্রদান করে।
  • এর পরে, ' console.log ()' পদ্ধতি ব্যবহার করে ' রেফ ()” পদ্ধতি প্রিন্ট করার জন্য রিটার্ন করা “ সময় শেষ বস্তু।
  • এখন ' unref ()' পদ্ধতি 'কে নিষ্ক্রিয় করে সময় শেষ ' অবজেক্ট যদি এটি বিদ্যমান থাকে এবং তারপর 'এর মাধ্যমে ফলাফল যাচাই করে আছে রেফ ()' পদ্ধতি।
  • সবশেষে, রেফারেন্স করুন ' সময় শেষ ' বস্তু আবার, তার অস্তিত্ব পরীক্ষা করে, এবং তারপর 'বন্ধ' ব্যবহার করে ব্যবধানটি সাফ টাইমআউট ()' পদ্ধতি।

আউটপুট

চালান ' অ্যাপ .js' ফাইল প্রদত্ত ' ব্যবহার করে node 'আদেশ:

নোড অ্যাপ। জেএস

নীচের আউটপুট প্রথমে 'এর অস্তিত্ব দেখায় সময় শেষ অবজেক্ট এবং তারপর এটি নিষ্ক্রিয় করে এবং যথাক্রমে বিরতি বন্ধ করে:

এটি ছেড়ে যাওয়ার বিষয়ে সবই ' সময় শেষ ” Node.js এর পিছনে বস্তু।

উপসংহার

ছেড়ে যেতে ' সময় শেষ 'অবজেক্ট বিল্ট-ইন ব্যবহার করে' unref ()' এবং ' রেফ ()' এর পদ্ধতি ' সময় শেষ 'শ্রেণী। এই উভয় পদ্ধতিই তাদের নাম এবং কার্যকারিতার উপর ভিত্তি করে অপারেশন করে। এই পদ্ধতিগুলি ইভেন্ট লুপের ডিফল্ট আচরণ পরিচালনা করে। এই লেখাটি Node.js-এ টাইমআউটগুলিকে পিছনে ফেলে দেওয়ার সমস্ত সম্ভাব্য পদ্ধতির চিত্র তুলে ধরেছে।