queue.java

来自「基于java nio实现的http服务器」· Java 代码 · 共 31 行

JAVA
31
字号
package org.sse.server;

import java.util.LinkedList;

/**
 * @author tcowan
 */
public class Queue extends LinkedList
{
	private int waitingThreads = 0;

	public synchronized void insert(Object obj)
	{
		addLast(obj);
		notify();
	}

	public synchronized Object remove()
	{
		if ( isEmpty() ) {
			try	{ waitingThreads++; wait();} 
			catch (InterruptedException e)	{Thread.interrupted();}
			waitingThreads--;
		}
		return removeFirst();
	}

	public boolean isEmpty() {
		return 	(size() - waitingThreads <= 0);
	}
}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?