首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > 编程 >

一个同步行列例子

2012-09-17 
一个同步队列例子这个用的也比较少, 做一个参考, 原文见这里private BlockingQueue workQueue new Linke

一个同步队列例子
这个用的也比较少, 做一个参考, 原文见这里

private BlockingQueue workQueue = new LinkedBlockingQueue();private Map commandQueueMap = new ConcurrentHashMap();  public SynchronousQueue addCommand(Command command) {    SynchronousQueue queue = new SynchronousQueue();    commandQueueMap.put(command, queue);    workQueue.offer(command);    return queue;} public Object call() throws Exception {    try {        Command command = workQueue.take();        Result result = command.execute();        SynchronousQueue queue = commandQueueMap.get(command);        queue.offer(result);        return null;    } catch (InterruptedException e) {        throw new WorkException(e);    }}


Command command;SynchronousQueue queue = commandRunner.addCommand(command);Result result = queue.poll(2, TimeUnit.MINUTES);if (result == null) {throw new CommandTooLongException(command);} else {return result;}

1 楼 qq123zhz 2012-04-06   我用的是arrayBlockQueue。。。

热点排行