2013-06-25 28 views
8

Tôi đang sử dụng Akka 2.1.4. Tôi cần một trong những diễn viên của tôi để gửi một thông điệp bị trì hoãn đến chính nó.Akka Gửi tin nhắn bị trì hoãn đến tự không thể Tìm thấy tiềm ẩn ExecutionContext

Tôi đã cố gắng, từ bên trong của receive Diễn viên:

context.system.scheduler.scheduleOnce(1 second, self, msg)

Tuy nhiên, nó không biên dịch, vì nó không thể tìm thấy ExecutionContext ngầm. Tôi có thể lấy nó từ đâu ?.

LƯU Ý: Tôi biết rằng người gửi thực sự sẽ không phải là diễn viên của tôi, nhưng điều đó là OK, vì tôi không cần biết người gửi là ai.

Trả lời

13

Bạn cũng có thể làm điều đó như thế này:

class MyActor extends Actor{ 
    import context._ 
    ... 
} 

Bằng cách này bạn được đảm bảo rằng bạn đang nhận được điều phối giao cho diễn viên rằng trong trường hợp nó khác với điều phối chính cho hệ thống (mà là những gì bạn đang nhận được giải pháp của bạn).

3

Tôi nghĩ rằng tôi đã tìm thấy nó:

import myActorSystem.dispatcher 

context.system.scheduler.scheduleOnce(1 second, self, msg) 

Bây giờ nó biên dịch.

Các vấn đề liên quan