有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

java如何在阻塞队列中添加多个对象?

BlockingQueue<ServiceSync>bq=new LinkedBlockingDeque<ServiceSync>();

ServiceSync s=new ServiceSync();
s.setService(OperationsConst.CODE, commonUtil.DOWNLOAD, true,null );    
bq.add(s);
//s=new ServiceSync();
s.setService(OperationsConst.LOGIN, commonUtil.DOWNLOAD, true,null );           
bq.add(s);          
tmp=new TempThread(bq, context);
tmp.setBlockingQueue(bq);

在这里,我添加了两个对象,但每次队列中只添加第二个对象


共 (1) 个答案

  1. # 1 楼答案

    当前正在向队列中添加s,请更改添加的值并再次添加。因此,最后的队列中有两个相同的对象。取消对s=new ServiceSync()的注释,或者(更好)创建一个类型为ServiceSync的新变量并将其添加到队列中