首页 > 开发 > Java > 正文

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

2024-07-13 10:04:36
字体:
来源:转载
供稿:网友

javascript/131045.html">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教程频道。
发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表