---
title: autorelease
framework: objectivec
role: symbol
role_heading: Instance Method
path: objectivec/nsobject-c.protocol/autorelease
---

# autorelease

Decrements the receiver’s retain count at the end of the current autorelease pool block.

## Declaration

```occ
- (instancetype) autorelease;
```

## Return Value

Return Value self.

## Discussion

Discussion For more information about autorelease pool blocks, see Advanced Memory Management Programming Guide. Special Considerations Instead of using manual reference counting, you should adopt ARC—see Transitioning to ARC Release Notes.

## See Also

### Obsolete Methods

- [retain](objectivec/nsobject-c.protocol/retain.md)
- [release](objectivec/nsobject-c.protocol/release.md)
- [retainCount](objectivec/nsobject-c.protocol/retaincount.md)
- [zone](objectivec/nsobject-c.protocol/zone.md)
