首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Scala参与者智能路由

Scala参与者智能路由
EN

Stack Overflow用户
提问于 2012-01-31 18:53:50
回答 1查看 200关注 0票数 2

我需要执行一些(比方说10个)少于(即)3个参与者的任务。

但我不想在一开始就分配所有的任务,因为执行时间可能会有所不同。这就是为什么我需要给他们所有人发送一个任务,当任何一个任务完成时,他将被分配一个新的任务。这样,当第一个任务需要3秒,而其余任务只需要0.5秒时,可以在3秒内完成任务。

有10个任务列表:

代码语言:javascript
复制
(() => Thread.sleep(3000); println("done long"}) :: (1..9).map({() => println("done short")})

我想要输出:

代码语言:javascript
复制
done short
done short
done short
done short
done short
done short
done short
done short
done short
done long

我可以编写经理角色,将角色返回给经理,并重新分配工作,但我希望在Scala或Akka中找到固定的解决方案。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2012-01-31 19:00:37

Akka支持调度器,特别是工作窃取。有关详细信息,请查看this帖子。

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

https://stackoverflow.com/questions/9078312

复制
相关文章

相似问题

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