Queue and mailbox

Hi,

I am not getting the advantage of mailbox over queues.
As what I got is that in both we can put and get the object handles or values. In queue we can get any value from the position we want. while in mailbox in build methods are there put,get,try_put, try_get etc. so how is mailbox is more efficient than queues?

Thanks