void DisposePorts()
{
for (int i = _midiOutPorts.Length - 1; i >= 0; i--) {
if (_midiOutPorts [i] != null) {
_midiOutPorts [i].Dispose ();
}
}
for (int i = _midiInPorts.Length - 1; i >= 0; i--) {
if (_midiInPorts [i] != null) {
_midiInPorts [i].Dispose ();
}
}
for (int i = _audioOutPorts.Length - 1; i >= 0; i--) {
if (_audioOutPorts [i] != null) {
_audioOutPorts [i].Dispose ();
}
}
for (int i = _audioInPorts.Length - 1; i >= 0; i--) {
if (_audioInPorts [i] != null) {
_audioInPorts [i].Dispose ();
}
}
}