4 #include "include/types.h"
9 fifo(size_t max_size=0) : max_(max_size) {}
11 bool enq(T e, bool blocking=true) {
13 while (max_ && q_.size() >= max_) {
16 has_space_c_.wait(ml);
19 non_empty_c_.notify_one();
26 non_empty_c_.wait(ml);
29 if (max_ && q_.size() < max_)
30 has_space_c_.notify_one();