/ / अक्का किल इस पर्यवेक्षक और उसके बच्चों को समाप्त क्यों नहीं कर रही है? - स्कैला, playframework-2.0, अक्का

अक्का किल इस पर्यवेक्षक और उसके बच्चों को समाप्त क्यों नहीं कर रही है? - स्कैला, playframework-2.0, अक्का

मेरे पास एक पर्यवेक्षक है जो डिफ़ॉल्ट प्ले का उपयोग करके बाल प्रक्रियाएं बनाता है! 2.2 Akka.system। जब मैं तत्काल पर्यवेक्षक को मारने का प्रयास करता हूं, कुछ भी नहीं होता है और यह प्रसंस्करण करता रहता है।

class ImportSupervisor extends Actor {

import akka.actor.AllForOneStrategy
import akka.actor.SupervisorStrategy._
import scala.concurrent.duration._

val log = Logging(context.system, this)
override val supervisorStrategy =
AllForOneStrategy(maxNrOfRetries = 10, withinTimeRange = 1 hour) {
case e: Exception => Stop
}

override def preStart() {
Logger.info("supervisor starting up at "+self.toString)
}

def receive = {
case p: Props => context.actorOf(p)
}
}

नीचे वह कोड है जिसका उपयोग मैं पर्यवेक्षक को मारने के लिए कर रहा हूं जिसमें लगभग 1,000 बच्चे हैं:

Akka.system.actorSelection("akka://application/user/"+actorName) ! Kill

मैं सत्यापित कर सकता हूं कि मुझे एक्टोरपाथ सही मिल रहा है, लेकिन समस्या यह है Kill तत्काल प्रभाव नहीं पड़ता है। मैंने कोशिश की है Stop। मैं क्या गलत कर रहा हूं? क्या यह मानना ​​गलत है कि यह तुरंत बंद हो जाएगा?

उत्तर:

उत्तर № 1 के लिए 4

क्या यह मानना ​​गलत है कि यह तुरंत बंद हो जाएगा?

हाँ।

The Kill संदेश अभिनेता "एस मेलबॉक्स में enqueued होगा बस किसी भी अंय संदेश की तरह ।यदि इसके आगे अन्य संदेश हैं, अन्य अभिनेता अन्य संदेश संसाधित करने में व्यस्त है, तो Kill मैसेज का इंतजार करना पड़ेगा ।

यह सब के सभी प्रलेखन में समझाया गया है:

http://doc.akka.io/docs/akka/2.2.4/scala/actors.html#Stopping_actors