---
title: AcquireReference<T>(int)
product: Unity Editor
version: '7000.0'
latest_version: '7000.0'
status: This page documents version 7000.0. The latest version is 7000.0.
canonical: https://docs.unity.com/en-us/engine/7000.0/script-reference/unityengine/blobobject/acquirereference
latest_url: https://docs.unity.com/en-us/engine/7000.0/script-reference/unityengine/blobobject/acquirereference.md
last_updated: 2026-11-07
generated_at: 2026-11-10T14:37:42.717Z
locale: en-us
---

# AcquireReference<T>(int)

> Acquires a reference that keeps the blob data stored in this object alive, even if the object is destroyed or its data is replaced.

## Definition

* **Type:** Method
* **Namespace:** [UnityEngine](/engine/7000.0/script-reference/unityengine.md)
* **Assembly:** UnityEngine.AnimationModule

```csharp
public BlobObjectReference<T> AcquireReference<T>(int version = 0) where T : unmanaged
```

### Parameters

**** (\[int]\(https\://learn.microsoft.com/dotnet/api/system.int32)): The version of the layout of `T` that the stored data must have. The default value is 0. If the stored data has another version, the reference is invalid.

### Returns

| Type                                                                                           | Description                                                                                                                    |
| ---------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------ |
| [BlobObjectReference\<T>](/engine/7000.0/script-reference/unityengine/blobobjectreference1.md) | The new reference. You must dispose it. The reference is invalid if the object is empty or stores another version of the blob. |

### Remarks

Use the reference to read the blob from jobs and from code that the Burst compiler compiles. This code can't access this object. Convert it with [BlobObjectReference\<T>.AsBlobAssetReference](/engine/7000.0/script-reference/unityengine/blobobjectreference1/asblobassetreference.md) to read the data. The data stays valid until you dispose the reference.

Call this method from the main thread. The method doesn't throw when the object is empty or stores another version of the blob. Check [BlobObjectReference\<T>.IsValid](/engine/7000.0/script-reference/unityengine/blobobjectreference1/isvalid.md) before you use the reference.
