How about a sensible upper bound for queue size? It is really easy to create a leak if you keep pushing more than the limit specifies.