# submit

abstract fun <T : WorkParameters?> submit(workActionClass: Class<out WorkAction<T>>, parameterAction: Action<in T>)(source)

Submits a piece of work to be executed asynchronously. Execution of the work may begin immediately. Work submitted using processIsolation will execute in an idle daemon that meets the requirements set in the ProcessWorkerSpec. If no idle daemons are available, a new daemon will be started. Any errors will be thrown from await or from the surrounding task action if await is not used.

The `parameterAction` is invoked even when the work action declares WorkParameters.None as its parameters type; in that case it receives the WorkParameters.None singleton.