---
title: MIDIGetDriverIORunLoop()
framework: coremidi
role: symbol
role_heading: Function
path: coremidi/midigetdriveriorunloop()
---

# MIDIGetDriverIORunLoop()

Returns the server’s driver I/O thread.

## Declaration

```swift
func MIDIGetDriverIORunLoop() -> Unmanaged<CFRunLoop>
```

## Return Value

Return Value The CFRunLoop of the server’s driver I/O thread.

## Discussion

Discussion Drivers typically need to receive asynchronous I/O completion callbacks on a high-priority thread. So that the system can efficiently manage resources, the MIDI server provides a thread which drivers may use. This is a realtime-priority thread that drivers shouldn’t use for anything other than I/O.

## See Also

### Inspecting a Driver

- [MIDIGetDriverDeviceList(_:)](coremidi/midigetdriverdevicelist(_:).md)
- [MIDIDriverEnableMonitoring(_:_:)](coremidi/mididriverenablemonitoring(_:_:).md)
- [kMIDIDriverPropertyUsesSerial](coremidi/kmididriverpropertyusesserial.md)
- [MIDIDriverInterface](coremidi/mididriverinterface.md)
- [MIDIDriverRef](coremidi/mididriverref.md)
