JAVA 数据结构之Queue处理实例代码

这篇文章主要介绍了JAVA 数据结构之Queue处理实例代码的相关资料,需要的朋友可以参考下

java Queue处理

实例代码:

 import java.util.LinkedList; import java.util.Queue; private static Queue frameQueue = new LinkedList(); private static Lock lock = new ReentrantLock(); private PlayerThread p = new PlayerThread(); 

从队列取数据进行处理:

 private class PlayerThread extends Thread { @Override public void run() { FrameStruct frame; while(bPlayRun) { if(bCanFlush) { lock.lock(); while((frame=frameQueue.poll())!=null) { onFrame(frame.buf, 0, frame.len); try { Thread.sleep(30); } catch (InterruptedException e) { } } lock.unlock(); } } } } 

另一线程将数据放入队列:

 FrameStruct frame = new FrameStruct(); frame.buf = new byte[byteCount]; frame.len = byteCount; System.arraycopy(frameData, 0, frame.buf, 0, byteCount); lock.lock(); frameQueue.offer(frame); lock.unlock(); 

感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!

以上就是JAVA 数据结构之Queue处理实例代码的详细内容,更多请关注0133技术站其它相关文章!

赞(0) 打赏
未经允许不得转载:0133技术站首页 » Java