কম্পিউটার

জাভা 9-এ CompletableFuture-এর delayedExecutor() পদ্ধতি কখন ব্যবহার করবেন?


The delayedExecutor() পদ্ধতিটি সম্পূর্ণ ভবিষ্যত -এ যোগ করা হয়েছে জাভা 9-এ ক্লাস। সম্পূর্ণ ভবিষ্যত delayedExecutor()-এর দুটি ওভারলোড পদ্ধতি সংজ্ঞায়িত করে :প্রথম পদ্ধতিটি ডিফল্ট থেকে একটি এক্সিকিউটর অবজেক্ট প্রদান করে নির্বাহক বস্তু যা সম্পূর্ণ ভবিষ্যত অবজেক্টটি বিলম্বের পরে কার্য সম্পাদন করতে এবং নতুন নির্বাহক ব্যবহার করে অবজেক্ট টাস্ক এক্সিকিউশন করতে পারে যেখানে দ্বিতীয় পদ্ধতিটিও একটি এক্সিকিউটর অবজেক্ট রিটার্ন করে কিন্তু একটি এক্সিকিউটর অবজেক্ট যা আমরা বিলম্বের পরে এই পদ্ধতিতে পাস করি এবং নতুন এক্সিকিউটর অবজেক্ট টাস্ক এক্সিকিউশনও করতে পারে।

সিনট্যাক্স

public static Executor delayedExecutor(long delay, TimeUnit unit, Executor executor)
public static Executor delayedExecutor(long delay, TimeUnit unit)

উদাহরণ

import java.util.concurrent.CompletableFuture;
import java.util.concurrent.ExecutionException;
import java.util.concurrent.TimeUnit;

public class DelayedExecutorMethodTest {
   public static void main(String args[]) throws InterruptedException, ExecutionException {
      CompletableFuture<String> future = new CompletableFuture<>();
      future.completeAsync(() -> {
         try {
            System.out.println("inside future: processing data...");
            return "tutorialspoint.com";
         } catch(Throwable e) {
            return "not detected";
         }
      }, CompletableFuture.delayedExecutor(3, TimeUnit.SECONDS))
                          .thenAccept(result -> System.out.println("accept: " + result));
      for(int i = 1; i <= 5; i++) {
         try {
            Thread.sleep(1000);
         } catch(InterruptedException e) {
            e.printStackTrace();
         }
         System.out.println("running outside... " + i + " s");
      }
   }
}

আউটপুট

running outside... 1 s
running outside... 2 s
inside future: processing data...
accept: tutorialspoint.com
running outside... 3 s
running outside... 4 s
running outside... 5 s

  1. আমরা কখন জাভাতে প্যাক() পদ্ধতি ব্যবহার করতে পারি?

  2. জাভাতে setBounds() পদ্ধতির ব্যবহার কি?

  3. জাভাতে java.lang.String ক্লাসের substring() পদ্ধতি কিভাবে ব্যবহার করবেন?

  4. কখন আমরা জাভাতে স্ট্রিং ক্লাসের ইন্টার্ন() পদ্ধতি ব্যবহার করতে পারি?