前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >面试题13:BlockingQueue的常用方法有哪些?

面试题13:BlockingQueue的常用方法有哪些?

作者头像
爪哇缪斯
发布2023-05-09 21:35:11
1870
发布2023-05-09 21:35:11
举报
文章被收录于专栏:爪哇缪斯爪哇缪斯

BlockingQueue定义的常用方法如下:

  • add(anObject)

把anObject加到BlockingQueue里,如果BlockingQueue可以容纳,则返回true,否则抛出异常。

  • offer(anObject)

表示如果可能的话,将anObject加到BlockingQueue里,如BlockingQueue可以容纳,则返回true,否则返回false。

  • put(anObject)

把anObject加到BlockingQueue里,如果BlockQueue没有空间,则调用此方法的线程被阻塞直到BlockingQueue里面有空间再继续。

  • poll(time)

取走BlockingQueue里排在首位的对象,若不能立即取出,则可以等time参数规定的时间,取不到时返回null。

  • take()

取走BlockingQueue里排在首位的对象,若BlockingQueue为空,阻塞进入等待状态直到Blocking有新的对象被加入为止。

其中:BlockingQueue不接受null元素。试图add、put 或offer一个null元素时,某些实现会抛出NullPointerException。null被用作指示poll操作失败的警戒值。

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2021-10-13,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 爪哇缪斯 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档