Blocking buffer implementation