首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >为什么actorOf函数**不需要以*Actor<_>*作为参数的函数输入?

问为什么actorOf函数**不需要以*Actor<_>*作为参数的函数输入?
EN

Stack Overflow用户
提问于 2017-02-08 19:40:38
回答 1查看 75关注 0票数 1

Akka.Net:

为什么actorOf函数而不是需要一个以Actor<_>作为参数的函数输入?

看来,actorOf2函数确实需要一个Actor<_>参数。

如何调用这些函数的上下文如下:

代码语言:javascript
复制
let consoleWriterActor = spawn myActorSystem "consoleWriterActor" (actorOf Actors.consoleWriterActor)
let consoleReaderActor = spawn myActorSystem "consoleReaderActor" (actorOf2 (Actors.consoleReaderActor consoleWriterActor))

let consoleReaderActor (consoleWriter: IActorRef) (mailbox: Actor<_>) message = 
    ...

let consoleWriterActor message = 
    ...

actorOf的签名如下:

代码语言:javascript
复制
('Message -> unit) -> Actor<Message> -> Cont<'Message,'Returned>

actorOf2的签名如下:

代码语言:javascript
复制
(Actor<Message> -> 'Message -> unit) -> Actor<Message> -> Cont<'Message,'Returned>

结论:

我是Akka.net的新手。因此,我不明白为什么"Actor<_>“参数(我认为它代表邮箱)对actorOf函数没有用处。

EN

回答 1

Stack Overflow用户

发布于 2017-02-10 15:01:29

actorOf2函数接受一个Actor<_>参数,该参数表示一个参与者执行上下文(来自F# MailboxProcessor,通常称为邮箱)。它允许诸如更改参与者生命周期、创建子参与者或与消息发送方进行通信等内容。

然而,有时您可能想要创建参与者,它被设计成一个简单的数据接收器,即处理消息并将结果推入某个外部服务。这就是actorOf可能有用的地方。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/42122186

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档