Skip to main content

Design a Blocking Queue

Build a bounded blocking queue for many threads: put waits while it is full, take waits while it is empty, items leave in order, and nothing is lost or delivered twice. Build it from a lock and condition variables, not a library queue.

How the round runs

Hard · 5 stages · 5 questions · 60 min
~6 min
Requirements Gathering
lists
~3 min
Identifying Core Entities
cards
~14 min
Designing Classes & Relationships
diagram
~28 min
Code Implementation
code
~9 min
Deep Dives
code

Set up your round

Level

Interviewer

Duration

Junior · Standard · 60 min