public void ReleaseUnusedAudioSourceControl() { for (int i = this.m_audioSourceControlList.Count - 1; i >= 0; i--) { AudioSourceControl audioSourceControl = this.m_audioSourceControlList[i]; if (audioSourceControl == null || audioSourceControl.audioSourceObject == null) { this.m_audioSourceControlList.RemoveAt(i); } else if (!audioSourceControl.isPlaying) { audioSourceControl.Clear(); this.m_audioSourceControlList.RemoveAt(i); } } }