JAVA 数据结构之Queue处理实例代码
2017-02-23 09:57
816 查看
java Queue处理
实例代码:
import java.util.LinkedList; import java.util.Queue; private static Queue<FrameStruct> frameQueue = new LinkedList<FrameStruct>(); 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常用字符串处理实例代码
- Java 使用json-lib处理JSON详解及实例代码
- java时间类处理实例代码
- Java图片处理 (文字水印、图片水印、缩放、补白)代码实例
- Java性能优化之数据结构实例代码
- Java线程之锁对象Lock-同步问题更完美的处理方式代码实例
- 不使用log4j.xml/log4j.properties在Java代码中生成Logger实例
- Java批注的发明起因及代码应用实例(2)
- Java批注的发明起因及代码应用实例
- Java中数据库事务处理的实现-JSP教程,Java技巧及代码
- java异常处理实例
- JAVA自定义标签教程及实例代码
- Java批注的发明起因及代码应用实例(1)
- 旧文重整理:数据结构和字符串处理代码整理
- Java实现嵌入式数据库(文本数据库)代码实例
- Java实现嵌入式数据库(文本数据库)代码实例
- 案例4-3 Ajax的响应处理简单实例(征服Ajax——Web 2.0快速入门与项目实践Java)
- JAVA分页代码实例
- Java 事件处理实例
- 实例代码讲解Java连接Oracle数据库的各种方法