<!--
{
  "availability" : [
    "macCatalyst: 13.1.0 - 13.1.0",
    "macOS: 10.3.0 - 10.7.0"
  ],
  "documentType" : "symbol",
  "framework" : "CoreAudio",
  "identifier" : "/documentation/CoreAudio/AudioHardwareRemoveRunLoopSource",
  "metadataVersion" : "0.1.0",
  "role" : "Function",
  "symbol" : {
    "kind" : "Function",
    "modules" : [
      "Core Audio"
    ],
    "preciseIdentifier" : "c:@F@AudioHardwareRemoveRunLoopSource"
  },
  "title" : "AudioHardwareRemoveRunLoopSource"
}
-->

# AudioHardwareRemoveRunLoopSource

```
extern OSStatus AudioHardwareRemoveRunLoopSource(CFRunLoopSourceRef inRunLoopSource);
```

## Parameters

`inRunLoopSource`

The CFRunLoopSource to remove.

## Return Value

An OSStatus indicating success or failure.

## Discussion

\abstract Remove the given CFRunLoopSource from the the HAL’s notification CFRunLoop.
\discussion The CFRunLoop the HAL uses for notifications is specified by
kAudioHardwarePropertyRunLoop.
Usage of the HAL’s notification run loop is deprecated. Please use libdispatch
instead.

---

Copyright &copy; 2026 Apple Inc. All rights reserved. | [Terms of Use](https://www.apple.com/legal/internet-services/terms/site.html) | [Privacy Policy](https://www.apple.com/privacy/privacy-policy)