.Net ring buffer implementation