# IsolatedAction

@HasImplicitReceiver
@Incubating
interface IsolatedAction<T> : Serializable

Defines an action that is applied to objects of type T, with each target getting its own isolated action instance. Each isolated action is re-created through Configuration Cache serialization before it is applied to a target. This approach ensures that sharing mutable state across targets via any means (including org.gradle.api.services.BuildService, which are not supported) is prevented. The absence of shared mutable state allows these actions to be safely executed in parallel as needed.

IMPORTANT: As isolated action instances are recreated using Configuration Cache serialization, they must adhere to the same requirements as any other object serialized into the Configuration Cache.

#### Since

8.8

#### Parameters

<T>

The type of object the action operates on.

## Functions

execute
Link copied to clipboard
abstract fun execute(target: T)
Performs this action against the given object.