虽然Scala actor被描述为轻量级,而Akka actor更是如此,但使用它们肯定会有一些开销。因此,我的问题是,什么是值得使用Actor并行处理的最小工作单元(假设它可以并行处理)?只有在存在潜在延迟或有很多重计算的情况下才值得这样做吗?
我正在寻找一个通用的经验法则,可以轻松应用于我的日常工作。
编辑:到目前为止,答案让我意识到我实际上感兴趣的是与我最初提出的问题相反。所以:
假设使用Actor对我的程序进行结构化非常合适,因此不会产生额外的开发开销(甚至比非Actor实现更少的开发开销),但它执行的工作单位非常小-是否存在一些性能损害的点,应该避免使用Actor?
我正在寻找一个通用的经验法则,可以轻松应用于我的日常工作。
编辑:到目前为止,答案让我意识到我实际上感兴趣的是与我最初提出的问题相反。所以:
假设使用Actor对我的程序进行结构化非常合适,因此不会产生额外的开发开销(甚至比非Actor实现更少的开发开销),但它执行的工作单位非常小-是否存在一些性能损害的点,应该避免使用Actor?