अभिनेताओं के साथ प्राप्त करते समय (सत्य) के बजाए लूप का उपयोग करने में क्या अंतर है। लूप बहुत तेजी से काम करता प्रतीत होता है, लेकिन क्यों, और बोनेट के नीचे क्या चल रहा है?क्या होता है जब हम स्केल कलाकारों के साथ (सत्य) के बजाय लूप का उपयोग करते हैं?
क्या (सत्य) के बजाए लूप का उपयोग करने में कुछ बुरा है?
संदर्भ के बारे में अधिक जानकारी। मैं सरल पिंग/पोंग कोड के भीतर प्रदर्शन परीक्षण कर रहा हूं। और मैं प्राप्त का उपयोग कर रहा हूँ।
class ReceivePing(
count : Int,
pong : Actor
) extends Actor {def act() {
var pingsLeft = count - 1
pong ! Start
pong ! ReceivePing
while(true) {
receive {
case ReceivePong =>
if (pingsLeft % 10000 == 0)
Console.println("ReceivePing: pong")
if (pingsLeft > 0) {
pong ! ReceivePing
pingsLeft -= 1
} else {
Console.println("ReceivePing: stop")
pong ! Stop
exit()
}
}
}}}
जबकि के बजाय
(सही) यह पाश के साथ बेहतर प्रदर्शन करती है:
यह पिंग वर्ग है।
धन्यवाद
तो क्या इसका मतलब है कि प्राप्त या प्रतिक्रिया धागे पर कोई प्रभाव नहीं पड़ता है। "जबकि" और "लूप" कीवर्ड धागे को नियंत्रित कर रहे हैं। – Zerdush
@ ज़ेडडुश नो, 'लूप' और 'रिएक्शन' का धागा पर असर पड़ता है - वे दोनों इसे छोड़ देते हैं। न तो 'जबकि' और न ही 'प्राप्त' थ्रेड जारी करें। –