Currently, if you try to request too much memory for the queue and allocation fails, we throw an OOM panic. That's pretty unfriendly :) Instead, we should return a `Result` with the proper error so the user can decide what to do.