2013-08-12 3 views
3

BoundedMailbox와 함께 akka 액터를 사용하는 비 차단 방법을 찾으려고합니다. 액터의 사서함이 가득 차면 메시지가 삭제됩니다. pushTimeOut을 0으로 설정하여이 작업을 수행 할 수 있습니까? 이 방법으로 어떤 단점이나주의해야 할 점이 있습니까?akka non-blocking BoundedMailbox

+0

수신 메시지를 삭제하거나 이전 메시지를 삭제 하시겠습니까? –

+0

새 수신 메일을 삭제합니다. –

+1

pushTimeout을 0으로 설정하면 제한 시간이 초과 된 메일 사용이 보장되지만 차단되지는 않습니다. 제한된 사서함은 해당 큐 구현으로 LinkedBlockingQueue를 사용합니다. 메시지를 대기열에 놓으면 pushTimeout을 입력으로 사용하는'offer'를 사용합니다. 0을 사용하더라도 항목을 추가하는 데 필요한 잠금을 가져 오는 오버 헤드가 여전히 발생하여 비 블로킹 솔루션 인 – cmbaxter

답변

3

예, pushTimeOut을 0으로 설정하면 사서함이 가득 차면 새 메시지가 삭제됩니다. 삭제 된 메시지는 dead letters actor 특수 문자로 전송됩니다.

관련 문제