2

childActor と parentActor の 2 つのアクターがあります。

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# を使用して akka.net で親アクターの下に子アクターを作成する方法はありますか?

4

1 に答える 1