# Release(Object)

> Releases an asset previously returned by this provider.

## Definition

* **Type:** Method
* **Namespace:** [Unity.Localization.Providers](/engine/6000.7/script-reference/unity/localization/providers.md)
* **Assembly:** UnityEngine.LocalizationRuntimeModule

```csharp
void Release(Object asset)
```

### Parameters

**** (\[Object]\(/engine/6000.7/script-reference/unityengine/object)): The asset to release.

### Remarks

Call this when the asset is no longer needed so the provider can unload it. Providers that hand back assets they do not own, such as [ReferencedAssetProvider](/engine/6000.7/script-reference/unity/localization/providers/referencedassetprovider.md), implement this as a no-op.

Release an asset once it is no longer needed.

### Examples

```csharp
using System.Threading;
using Unity.Localization.Providers;
using UnityEngine;

namespace Unity.Localization.Samples
{
    public class IAssetProviderReleaseExample
    {
        public async Awaitable Run()
        {
            IAsyncAssetProvider provider = new ResourceFolderProvider();

            var texture = await provider.LoadAssetAsync<Texture2D>(
                new AssetKey("UI/Logo", typeof(Texture2D)), CancellationToken.None);

            if (texture != null)
                provider.Release(texture);
        }
    }
}
```
