DDDD: Circular Disk-backed Buffer

In a few of Greg's video presentations regarding DDDD, he mentions using a circular, disk-backed buffer. As far as I can tell, he's using this as a temporary storage mechanism when events are committed. He then has a single consumer reading the events from this buffer and putting them into the permanent event store.

I just read an interesting article by one of the .NET CLR guys about building a thread-safe, producer/consumer buffer. This buffer could potentially be used as the temporary storage before pushing committed events into permanent storage.