1

我有一个演员正在执行一个永久循环,该循环正在等待数据的可用性进行操作。文档说 Actor 在一个非常轻量级的线程上运行,所以我不确定我是否可以在那个 Actor 上使用 thread.sleep() 方法。我的目标是不让那个演员消耗太多的处理能力。

那么我可以在 actor 内部使用 thread.sleep() 方法吗?

4

1 回答 1

3

不要sleep()在演员里面!这将导致线程被阻塞,从而导致您试图避免的事情——耗尽资源。

相反,如果您只是处理消息并且“什么都不做”,Actor 将不会使用任何调度资源,并且将只是堆上的另一个普通对象(占用一点内存,但仅此而已)。

于 2015-08-19T12:57:57.987 回答