Java-ში რა მიზნით გამოიყენება Future და CompletableFuture კლასი?
sobes.tech AI
პასუხი AI-სგან
Java-ში Future და CompletableFuture კლასები განკუთვნილია ასინქრონული გამოთვლების შედეგებთან მუშაობისთვის.
-
Future წარმოადგენს შედეგს, რომელიც მომავალში იქნება ხელმისაწვდომი. Future-ის საშუალებით შეგიძლიათ გადაამოწმოთ, დასრულდა თუ არა გამოთვლა, მიიღოთ შედეგი (metod get ბლოკავს ნაკადს, თუ შედეგი ჯერ არ არის მზად) ან გაუქმოთ დავალება.
-
CompletableFuture-ს შეუძლია გაფართოვდეს Future-ის შესაძლებლობებს, უზრუნველყოფს კომფორტულ API-ს ასინქრონული ოპერაციების კომპოზიცისთვის, შედეგების დამუშავებისთვის ბლოკირების გარეშე, ზარის ჯაჭვების და გამონაკლისების მართვისთვის. ის მხარს უჭერს ფუნქციონალურ მეთოდებს, როგორიცაა thenApply, thenAccept, thenCompose და სხვა, რაც ხელს უწყობს რთული ასინქრონული სცენარების შექმნას.
გამოყენების მაგალითი — CompletableFuture:
CompletableFuture.supplyAsync(() -> {
// ხანგრძლივი ოპერაცია
return "შედეგი";
}).thenApply(result -> {
// შედეგის დამუშავება
return result.toUpperCase();
}).thenAccept(finalResult -> {
System.out.println(finalResult);
});