Why does the Akka.Net F # API define actorOf2 but not actorOf3, actorOf4, etc.?

I am studying the F # Akka.Net API, which is very different from its C # counterpart, because it is trying to expose Akka's functionality in an idiomatic manner. Therefore, he introduces the computational expression actor and a pair of helper functions actorOf and actorOf2 :

let consoleWriterActor = 
        spawn myActorSystem "consoleWriterActor" (actorOf Actors.consoleWriterActor)
let consoleReaderActor = 
        spawn myActorSystem "consoleReaderActor" (actorOf2 (Actors.consoleReaderActor consoleWriterActor))

actorOf is useful for creating an actor that does not depend on additional participants, and actorOf2 allows you to send another actor as an argument for the created actor, as shown above.

It is clear, but I wonder what is so special about taking only one actor as a parameter? Would not define actorOf3 , actorOf4 , etc. Help send several actor parameters to the created actor? For example, the C # macro of a general action <...> has definitions for up to 16 action arguments. Does it make sense to define several actorOfX functions ? For example, the code from the Akka.Net boot file that uses the validation action looks like this:

let consoleWriterActor = 
    spawn myActorSystem "consoleWriterActor" (actorOf Actors.consoleWriterActor)
let validationActor = 
    spawn myActorSystem "validationActor" (actorOf2 (Actors.validationActor consoleWriterActor))
let consoleReaderActor = 
    spawn myActorSystem "consoleReaderActor" (actorOf2 (Actors.consoleReaderActor validationActor))

, : consoleReaderActor validationActor validationActor consoleWriterActor. , , consoleReaderActor validationActor consoleWriterActor? , actorOf.

. @Horusiath. Akka.Net bootcamp ( F #), :

let a1 = 
    spawn myActorSystem "a1" (actorOf Actors.consoleWriterActor)
let a2 = 
    spawn myActorSystem "a2" (actorOf2 (Actors.consoleReaderActor consoleWriterActor))
let a2 = 
    spawn myActorSystem "a3" (actorOf2 (Actors.fileValidatorActor consoleWriterActor tailCoordinatorActor))
+4
1

actorOf2 - . . , , - actorOf - , , , .

+3

Source: https://habr.com/ru/post/1619027/


All Articles