---
title: "token(byAddingRenderObserver:)"
framework: audiotoolbox
role: symbol
role_heading: Instance Method
path: "audiotoolbox/auaudiounit/token(byaddingrenderobserver:)"
---

# token(byAddingRenderObserver:)

Adds a block to be called on each render cycle.

## Declaration

```swift
func token(byAddingRenderObserver observer: @escaping AURenderObserver) -> Int
```

## Parameters

- `observer`: The block to call.

## Return Value

Return Value A token to be used when removing the observer.

## Discussion

Discussion The supplied block is called at the beginning and ending of each render cycle. It should not make any blocking calls. This method is implemented in the AUAudioUnit base class and should not be overridden. This version 3 method is bridged to the version 2 AudioUnitAddRenderNotify(_:_:_:) API.

## See Also

### Managing the Render Cycle

- [allocateRenderResources()](audiotoolbox/auaudiounit/allocaterenderresources().md)
- [deallocateRenderResources()](audiotoolbox/auaudiounit/deallocaterenderresources().md)
- [reset()](audiotoolbox/auaudiounit/reset().md)
- [renderResourcesAllocated](audiotoolbox/auaudiounit/renderresourcesallocated.md)
- [renderBlock](audiotoolbox/auaudiounit/renderblock.md)
- [scheduleParameterBlock](audiotoolbox/auaudiounit/scheduleparameterblock.md)
- [maximumFramesToRender](audiotoolbox/auaudiounit/maximumframestorender.md)
- [removeRenderObserver(_:)](audiotoolbox/auaudiounit/removerenderobserver(_:).md)
- [AURenderObserver](audiotoolbox/aurenderobserver.md)
