Autoplay
Autocomplete
Previous Lesson
Complete and Continue
Teardown 01 - ArrayBlockingQueue
ArrayBlockingQueue
01. Introduction to ArrayBlockingQueue (2:01)
02. Interfaces - Collection (1:22)
03. Interfaces - Queue (3:36)
04. Interfaces - BlockingQueue (3:08)
05. Fields (3:55)
06. invariantsSatisfied() (5:49)
07. ReentrantLock and Conditions (2:26)
08. Why do we need Itrs? (5:42)
09. Constructors (2:23)
10. Lock in Constructor for Visibility (3:42)
11. add() (0:34)
12. offer() (1:01)
13. put() - lockInterruptibly (3:49)
14. put() condition predicate with while (2:11)
15. offer() with timeout awaitNanos() (4:58)
16. poll() (0:25)
17. take() (0:19)
18. poll() with timeout (0:56)
19. peek() (1:41)
20. element() and remove() (0:48)
21. commented out assertions inside enqueue() (4:16)
22. enqueue() (1:23)
23. dequeue() (2:30)
24. removeAt() (6:45)
25. inc(), dec(), itemAt() (3:28)
26. size() - would a ReadWriteLock be better? (3:04)
27. remainingCapacity() (0:21)
28. remove(Object) with split nested for loop (9:44)
29. contains(Object) (1:44)
30. toArray() (4:14)
31. toArray(T[]) (4:27)
32. Helpers Facade (9:03)
33. Navigating source history with GIT and CVS (6:29)
34. Helpers for printing Map entries (0:50)
35. clear() (3:33)
36. signal() vs signalAll() (7:23)
37. drainTo() (6:11)
38. spliterator() (2:07)
39. forEach() (1:31)
40. removeIf(), removeAll(), retainAll(), bulkRemove() (7:14)
41. bulkRemoveModified() (12:18)
42. checking invariants (1:31)
43. Itrs list of iterators (32:05)
44. Itr iterator implementation (37:12)
45. Final words about ArrayBlockingQueue (2:31)
46. TimeUnit (11:53)
Teach online with
06. invariantsSatisfied()
Lesson content locked
If you're already enrolled,
you'll need to login
.
Enroll in Course to Unlock