Help with concurrency blocking issue - C#