public static void notifyEOS(String sourcename, int queueSize) {
		synchronized (streamListenersLock) {
			if (streamListeners == null)
				return;
		}
		final String srcName = sourcename;
		final int qSize = queueSize;

		new Thread() {
			@Override
			public void run() {
				synchronized (streamListenersLock) {
					if (streamListeners == null)
						return;
					ListIterator<IStreamListener> i = streamListeners
							.listIterator();
					IStreamListener streamListener;
					while (i.hasNext()) {
						streamListener = i.next();
						if (streamListener == null)
							i.remove();
						else
							streamListener.endOfStream(srcName, qSize);
					}
				}
			}
		}.start();
	}