【Android面试八股文】你知道如何实现非阻塞式生产者消费者模式吗?

作者 : admin 本文共476个字,预计阅读时间需要2分钟 发布时间: 2024-06-14 共4人阅读

文章目录

  • 这道题想考察什么 ?
  • 考察的知识点
  • 日常生活中的生产者消费者模式
  • 生产者消费者模式简介
    • 为什么需要缓冲区?
    • 阻塞与非堵塞
    • 非阻塞式生产者消费者模式的实现
    • 非阻塞式生产者消费者模式的实现
    • 阻塞式生产者消费者模式实现
        • 特点

这道题想考察什么 ?

  • 是否了解非阻塞式生产者消费者与真实场景使用
  • 是否熟悉非阻塞式生产者消费者

考察的知识点

非阻塞式生产者消费者的概念在项目中使用与基本知识

日常生活中的生产者消费者模式

在日常生活中,生产者消费者模式特别常见。

比如说我们去麦当劳吃饭,在前台点餐,付完钱后并不是直接给你汉堡薯条啥的,而是给你一张小票,你需要前去取餐处等待,后厨加工完的餐食都直接放入取餐处,机器叫号提醒,客户凭小票取餐。

【Android面试八股文】你知道如何实现非阻塞式生产者消费者模式吗?插图
上面取餐的场景其实就是一个典型的生产者消费者模型,具备3个部分:

  • 生产者 : 后厨
  • 消费者:客户
  • 缓冲区:取餐台

后厨就相当于生产者客户就是消费者,而取餐台是两者之间的一个缓冲区

生产者消费者模式简介

再转到我们平时开发过程中经常会碰到这样子的场景:

某个模块负责产生数据,这些数据由另一个模块来负责处理。

产生数据的模块,就称为生产者,而处理数据的模块,就称为消费者。

本站无任何商业行为
个人在线分享 » 【Android面试八股文】你知道如何实现非阻塞式生产者消费者模式吗?
E-->