CodeGym/Java Course/মডিউল 3/নির্বাহক: নির্বাহযোগ্য বস্তু

নির্বাহক: নির্বাহযোগ্য বস্তু

বিদ্যমান

6.1 এক্সিকিউটেবল অবজেক্ট

তাই আমরা প্যাকেজের সবচেয়ে বড় অংশে পৌঁছে গেছি। এটি ভবিষ্যত এবং কলযোগ্য ইন্টারফেসের মাধ্যমে ফলাফল পাওয়ার ক্ষমতা সহ অ্যাসিঙ্ক্রোনাস কাজ চালানোর জন্য ইন্টারফেসগুলি বর্ণনা করবে, সেইসাথে থ্রেড পুল তৈরির জন্য পরিষেবা এবং কারখানাগুলি: ThreadPoolExecutor, ScheduledPoolExecutor, ForkJoinPool.

আরও ভালোভাবে বোঝার জন্য, ইন্টারফেস এবং ক্লাসের একটু পচন করা যাক।

6.2 নির্বাহযোগ্য বস্তুর উপলব্ধি

Future<V>একটি অ্যাসিঙ্ক্রোনাস অপারেশনের ফলাফল পাওয়ার জন্য একটি চমৎকার ইন্টারফেস। এখানে মূল পদ্ধতি হল get মেথড, যা অন্য থ্রেডে একটি অ্যাসিঙ্ক্রোনাস অপারেশন সম্পূর্ণ না হওয়া পর্যন্ত বর্তমান থ্রেড (টাইমআউট সহ বা ছাড়া) ব্লক করে। অপারেশন বাতিল এবং বর্তমান অবস্থা চেক করার জন্য অতিরিক্ত পদ্ধতি আছে। FutureTask ক্লাস প্রায়ই একটি বাস্তবায়ন হিসাবে ব্যবহৃত হয়।

RunnableFuture<V>- যদি ফিউচার ক্লায়েন্ট API-এর জন্য একটি ইন্টারফেস হয়, তাহলে RunnableFuture ইন্টারফেসটি ইতিমধ্যেই অ্যাসিঙ্ক্রোনাস অংশ শুরু করতে ব্যবহৃত হয়। রান() পদ্ধতির সফল সমাপ্তি অ্যাসিঙ্ক্রোনাস অপারেশন শেষ করে এবং ফলাফলগুলি পেতে পদ্ধতির মাধ্যমে পুনরুদ্ধার করার অনুমতি দেয়।

Callable<V>- অ্যাসিঙ্ক্রোনাস অপারেশনের জন্য রানেবল ইন্টারফেসের একটি বর্ধিত অ্যানালগ। আপনাকে একটি টাইপ করা মান ফেরত দিতে এবং একটি চেক করা ব্যতিক্রম নিক্ষেপ করার অনুমতি দেয়। যদিও এই ইন্টারফেসে রান() পদ্ধতি নেই, অনেক java.util.concurrent ক্লাস এটি Runnable সহ সমর্থন করে।

FutureTask<V>— ফিউচার/রাননেবল ফিউচার ইন্টারফেসের বাস্তবায়ন। একটি অ্যাসিঙ্ক্রোনাস অপারেশনটি রানেবল বা কলেবল অবজেক্টের আকারে কনস্ট্রাক্টরের একটিতে ইনপুট হিসাবে নেওয়া হয়। FutureTask ক্লাসটি নিজেই একটি কর্মী থ্রেডে চালু করার জন্য ডিজাইন করা হয়েছে, উদাহরণস্বরূপ, নতুন Thread(task).start() বা ThreadPoolExecutor এর মাধ্যমে। একটি অ্যাসিঙ্ক্রোনাস অপারেশনের ফলাফল get(...) পদ্ধতির মাধ্যমে পুনরুদ্ধার করা হয়।

Delayed- অ্যাসিঙ্ক্রোনাস কাজের জন্য ব্যবহৃত হয় যা ভবিষ্যতে শুরু হওয়া উচিত, সেইসাথে DelayQueue-তেও। আপনাকে একটি অ্যাসিঙ্ক্রোনাস অপারেশন শুরুর আগে সময় সেট করার অনুমতি দেয়।

ScheduledFuture<V>- একটি মার্কার ইন্টারফেস যা ভবিষ্যত এবং বিলম্বিত ইন্টারফেসকে একত্রিত করে।

RunnableScheduledFuture<V>- একটি ইন্টারফেস যা রানেবল ফিউচার এবং শিডিউলড ফিউচারকে একত্রিত করে। অতিরিক্তভাবে, আপনি নির্দিষ্ট করতে পারেন যে টাস্কটি একটি এককালীন কাজ নাকি একটি নির্দিষ্ট ফ্রিকোয়েন্সিতে চালানো উচিত।

মন্তব্য
  • জনপ্রিয়
  • নতুন
  • পুরানো
মন্তব্য লেখার জন্য তোমাকে অবশ্যই সাইন ইন করতে হবে
এই পাতায় এখনও কোনো মন্তব্য নেই