আরএক্স জাভাতে বেছে নেওয়ার জন্য 5 টি আলাদা শিডিয়ুলার রয়েছে :
तत्काल () : বর্তমান থ্রেডে তাত্ক্ষণিক কাজ সম্পাদন করে এমন একটি শিডিয়ুলার তৈরি করে এবং ফেরত দেয় returns
ট্রাম্পলাইন () : স্যুইডুলার তৈরি করে এবং রিটার্ন দেয় যা বর্তমান কাজ শেষ হওয়ার পরে সারিগুলি বর্তমান থ্রেডে কার্যকর করা হবে।
newThread () : একটি সময়সূচী তৈরি করে এবং প্রদান করে যা কাজের প্রতিটি ইউনিটের জন্য একটি নতুন থ্রেড তৈরি করে।
গণনা () : গণনামূলক কাজের উদ্দেশ্যে একটি সময়সূচী তৈরি করে এবং প্রদান করে। এটি ইভেন্ট-লুপস, প্রসেসিং কলব্যাকস এবং অন্যান্য গণনার কাজের জন্য ব্যবহার করা যেতে পারে। এই সময়সূচীতে আইও-বাউন্ড কাজটি করবেন না। সময়সূচী ব্যবহার করুন। io () পরিবর্তে।
io () : আইও-বাউন্ড কাজের জন্য একটি সময়সূচী তৈরি করে এবং ফেরত দেয়। বাস্তবায়নের জন্য একটি নির্বাহী থ্রেড-পুল সমর্থন করে যা প্রয়োজন অনুযায়ী বাড়বে। এটি অযৌক্তিকভাবে IO ব্লক করার জন্য ব্যবহার করা যেতে পারে। এই সময়সূচীতে গণনামূলক কাজ করবেন না। সময়সূচী ব্যবহার করুন। পরিবর্তে গণনা () ।
প্রশ্নাবলী:
প্রথম 3 টি শিডিয়ুলার বেশ স্ব ব্যাখ্যাযোগ্য; তবে, আমি গণনা এবং আইও সম্পর্কে কিছুটা বিভ্রান্ত ।
- "আইও-বাউন্ডড কাজ" আসলে কী? এটি স্ট্রিম (
java.io
) এবং ফাইলগুলি (java.nio.files
) ব্যবহারের জন্য ব্যবহৃত হয় ? এটি কি ডাটাবেস প্রশ্নের জন্য ব্যবহার করা হয়? এটি ফাইল ডাউনলোড বা REST এপিআইগুলিতে অ্যাক্সেস করার জন্য ব্যবহৃত হয়? - নিউট্রেড () এর থেকে গণনা কীভাবে আলাদা ? এটি কি সমস্ত গণনা () কলগুলি প্রতিবার নতুন (পটভূমি) থ্রেডের পরিবর্তে একক (পটভূমি) থ্রেডে রয়েছে?
- আইও কাজ করার সময় গণনা () কল করা খারাপ কেন ?
- গণনার কাজ করার সময় আইও () কল করা খারাপ কেন ?