AsyncTask.Cancel(Boolean) Method

Definition

Attempts to cancel execution of this task.

[Android.Runtime.Register("cancel", "(Z)Z", "")]
public bool Cancel (bool mayInterruptIfRunning);
[<Android.Runtime.Register("cancel", "(Z)Z", "")>]
member this.Cancel : bool -> bool

Parameters

mayInterruptIfRunning
Boolean

true if the thread executing this task should be interrupted; otherwise, in-progress tasks are allowed to complete.

Returns

false if the task could not be cancelled, typically because it has already completed normally; true otherwise

Attributes

Remarks

Attempts to cancel execution of this task. This attempt will fail if the task has already completed, already been cancelled, or could not be cancelled for some other reason. If successful, and this task has not started when cancel is called, this task should never run. If the task has already started, then the mayInterruptIfRunning parameter determines whether the thread executing this task should be interrupted in an attempt to stop the task.

Calling this method will result in #onCancelled(Object) being invoked on the UI thread after #doInBackground(Object[]) returns. Calling this method guarantees that onPostExecute(Object) is never subsequently invoked, even if cancel returns false, but #onPostExecute has not yet run. To finish the task as early as possible, check #isCancelled() periodically from #doInBackground(Object[]).

This only requests cancellation. It never waits for a running background task to terminate, even if mayInterruptIfRunning is true.

Java documentation for android.os.AsyncTask.cancel(boolean).

Portions of this page are modifications based on work created and shared by the Android Open Source Project and used according to terms described in the Creative Commons 2.5 Attribution License.

Applies to