कैसे CompletableFuture
JDK 8 में पेश io.netty.util.concurrent.Future
Netty द्वारा प्रदान के साथ तुलना करता है?जावा 8 CompletableFuture बनाम Netty भविष्य
Netty प्रलेखन कहा गया है कि
JDK 8 CompletableFuture जो कुछ हद तक overlaps
io.netty.util.concurrent.Future
http://netty.io/wiki/using-as-a-generic-library.html
सवाल मैं जवाब पाने के लिए कोशिश कर रहा हूँ कहते हैं कर रहे हैं:
- उनकी समानताएं और differen क्या होगा सीएस हो?
- दो के प्रदर्शन विशेषताओं में क्या अंतर है? कौन सा बेहतर स्केल करने में सक्षम होगा?
समानता/मतभेद के संबंध में, मैं निम्नलिखित साथ आने के लिए सक्षम किया गया है:
समानता: मौलिक समानता जा रहा है दोनों के रूप में जावा की तुलना में गैर-अवरुद्ध हैं कि भविष्य। दोनों वर्गों में भविष्य में श्रोता जोड़ने, आत्मनिरीक्षण विफलता और कार्य की सफलता जोड़ने और कार्य से परिणाम प्राप्त करने के लिए विधियां उपलब्ध हैं।
अंतर: CompletableFuture
दूसरी ओर आदि कई async गतिविधियों रचना Netty के io.netty.util.concurrent.Future
जैसी चीजों के लिए एक अधिक बेहतर इंटरफ़ेस है लगता है कई श्रोताओं के लिए एक ही भविष्य में जोड़े जाने की अनुमति देता है, और इसके अलावा श्रोताओं के लिए के लिए अनुमति देता हटाया जाना।
आप 'CompletableFuture आह्वान कर सकते हैं।तो कुछ अलग-अलग() 'विधियों को कई बार, जो अन्य भावी ढांचे में एकाधिक श्रोताओं को जोड़ने के समान है। –
क्या CompletableFuture में नेटटी फ्यूचर की तरह इवेंट लूप है? – user1870400
@ user1870400 'CompletableFuture' (और 'CompletionStage' को लागू करने वाली किसी अन्य श्रेणी) में' thenApply' और 'thenApplyAsync' जैसी विधियां हैं जो विभिन्न तरीकों से काम करती हैं। 'ThenApply' जैसे तरीके तुरंत उसी थ्रेड पर निष्पादित हो जाएंगे, जबकि 'thenApplyAsync'' निष्पादक 'का उपयोग करके निष्पादित करेगा, जिसे किसी ईवेंट लूप के साथ कार्यान्वित किया जा सकता है (हालांकि डिफ़ॉल्ट एक कार्य चोरी पूल है)। – kag0