能否用BlockingQueue对象作为同步锁用?

jinggangshi 2019-04-28 11:26:28

class A{
public void testq1(){
BlockingQueue<String> queue = new LinkedBlockingQueue<String>(10);
new b(queue);
b.start;
}
}

class b implements Runnable{

BlockingQueue queue=null;
public b(Object o){
queue=o;
}
synchronized(queue){
while(
system.out.println(queue.take());
queue.notify();
wait();
}
}




上述代码手写,大概是这个意思,省略了很多,哈哈.
以前我这样做过,能运行,但不知道这样好不好.

BlockingQueue<Object> queue = new LinkedBlockingQueue<Object>(10);
如果上一行代码中Object是一个封闭的数据类,可不可以?
...全文
65 1 打赏 收藏 转发到动态 举报
写回复
用AI写文章
1 条回复
切换为时间正序
请发表友善的回复…
发表回复
reddiamond127 2019-06-21
  • 打赏
  • 举报
回复
本地使用应该问题不大,远程的话数据大了不好

62,614

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧