private void _WaitForCompletion(Opcode command) { while (true) { lock (_completedCommands) { if (_completedCommands.Contains(command)) { _completedCommands.Remove(command); break; } } Thread.Sleep(10); } }