public class Queue { private LinkedList msgList = new LinkedList(); public Object getMsg() { synchronized (this) { if (msgList != null && msgList.size() > 0) { return msgList.removeFirst(); } return null; } } public Object addMsg(Object obj) { synchronized(this) { msgList.addLast(obj); } return obj; }}前几天给别人写的,估计能实现你的要求的代码,当然没写测试!