# AsyncDifferConfig.Builder

Artifact: [androidx.recyclerview:recyclerview](https://developer.android.com/jetpack/androidx/releases/recyclerview) [View Source](https://cs.android.com/search?q=file:androidx/recyclerview/widget/AsyncDifferConfig.java+class:androidx.recyclerview.widget.AsyncDifferConfig.Builder) Added in [1.0.0](https://developer.android.com/jetpack/androidx/releases/recyclerview#1.0.0)

*** ** * ** ***


```
public final class AsyncDifferConfig.Builder<T>
```

<br />

*** ** * ** ***

Builder class for `https://developer.android.com/reference/androidx/recyclerview/widget/AsyncDifferConfig`.

| Parameters |
|---|---|
| `<T>` |   |

## Summary

| ### Public constructors |
|---|
| `https://developer.android.com/reference/androidx/recyclerview/widget/AsyncDifferConfig.Builder#Builder(androidx.recyclerview.widget.DiffUtil.ItemCallback<T>)(@https://developer.android.com/reference/androidx/annotation/NonNull https://developer.android.com/reference/androidx/recyclerview/widget/DiffUtil.ItemCallback<T> diffCallback)` |

| ### Public methods |
|---|---|
| `@https://developer.android.com/reference/androidx/annotation/NonNull https://developer.android.com/reference/androidx/recyclerview/widget/AsyncDifferConfig<T>` | `https://developer.android.com/reference/androidx/recyclerview/widget/AsyncDifferConfig.Builder#build()()` Creates a `https://developer.android.com/reference/androidx/recyclerview/widget/AsyncListDiffer` with the given parameters. |
| `@https://developer.android.com/reference/androidx/annotation/NonNull https://developer.android.com/reference/androidx/recyclerview/widget/AsyncDifferConfig.Builder<T>` | `https://developer.android.com/reference/androidx/recyclerview/widget/AsyncDifferConfig.Builder#setBackgroundThreadExecutor(java.util.concurrent.Executor)(@https://developer.android.com/reference/androidx/annotation/Nullable https://developer.android.com/reference/java/util/concurrent/Executor.html executor)` If provided, defines the background executor used to calculate the diff between an old and a new list. |

## Public constructors

### Builder

Added in [1.0.0](https://developer.android.com/jetpack/androidx/releases/recyclerview#1.0.0)

```
public Builder(@NonNull DiffUtil.ItemCallback<T> diffCallback)
```

## Public methods

### build

Added in [1.0.0](https://developer.android.com/jetpack/androidx/releases/recyclerview#1.0.0)

```
public @NonNull AsyncDifferConfig<T> build()
```

Creates a `https://developer.android.com/reference/androidx/recyclerview/widget/AsyncListDiffer` with the given parameters.

| Returns |
|---|---|
| `@https://developer.android.com/reference/androidx/annotation/NonNull https://developer.android.com/reference/androidx/recyclerview/widget/AsyncDifferConfig<T>` | A new AsyncDifferConfig. |

### setBackgroundThreadExecutor

Added in [1.0.0](https://developer.android.com/jetpack/androidx/releases/recyclerview#1.0.0)

```
public @NonNull AsyncDifferConfig.Builder<T> setBackgroundThreadExecutor(@Nullable Executor executor)
```

If provided, defines the background executor used to calculate the diff between an old and a new list.

If not provided or null, defaults to two thread pool executor, shared by all ListAdapterConfigs.

| Parameters |
|---|---|
| `@https://developer.android.com/reference/androidx/annotation/Nullable https://developer.android.com/reference/java/util/concurrent/Executor.html executor` | The background executor to run list diffing. |

| Returns |
|---|---|
| `@https://developer.android.com/reference/androidx/annotation/NonNull https://developer.android.com/reference/androidx/recyclerview/widget/AsyncDifferConfig.Builder<T>` | this |