我有两个演员- childActor和parentActor
open System
open Akka
open Akka.FSharp
let systemActor = System.create "systemActor" <| Configuration.defaultConfig()
let childActor (mailbox: Actor<_>) =
let rec loop() = actor {
let! message = mailbox.Receive()
printfn "Message received"
return! loop()
}
loop()
let parentActor (mailbox: Actor<_>) =
let rec loop() = actor {
let! message = mailbox.Receive()
printfn "Message received"
return! loop()
}
loop()
我可以使用spawn函数创建父参与者引用。
let parentRef = spawn systemActor "parentActor" parentActor
现在我想做的是在父参与者下创建子参与者引用。
let childRef = spawn parentRef "childActor" childActor
但这不起作用。spawn函数需要一个IActorRefFactory类型的参数,因此它不接受IActorRef。是否有任何方法可以使用F#在www.example.com中的父执行元下创建子执行元akka.net?
1条答案
按热度按时间pu3pd22g1#
IActorRefFactory
是一个负责确定父对象的接口,在Akka.FSharp的情况下,它也由ActorSystem
和Actor<_>
实现。因此,在您的情况下,只需用途: