# reuseCollisionCallbacks

> Determines whether the garbage collector should reuse only a single instance of a Collision2D type for all collision callbacks.

## Definition

* **Type:** Property
* **Namespace:** [UnityEngine](/engine/6000.7/script-reference/unityengine.md)
* **Assembly:** UnityEngine.Physics2DModule

```csharp
public static bool reuseCollisionCallbacks { get; set; }
```

### Remarks

When an `OnCollisionEnter2D`, `OnCollisionStay2D` or `OnCollisionExit2D` collision callback occurs, the [Collision2D](/engine/6000.7/script-reference/unityengine/collision2d.md) object passed to it is created for each individual callback. This means the garbage collector has to remove each object, which reduces performance.

When this option is true, only a single instance of the [Collision2D](/engine/6000.7/script-reference/unityengine/collision2d.md) type is created and reused for each individual callback. This reduces waste for the garbage collector to handle and improves performance.

You would only set this option to false if the [Collision2D](/engine/6000.7/script-reference/unityengine/collision2d.md) object is referenced outside of the collision callback for processing later, so recycling the [Collision2D](/engine/6000.7/script-reference/unityengine/collision2d.md) object is not required.
