Java队列和栈的阻塞机制是如何实现的?