言語

Thread.Interrupt メソッド

定義

このスレッドを中断します。

[Android.Runtime.Register("interrupt", "()V", "GetInterruptHandler")]
public virtual void Interrupt();
[<Android.Runtime.Register("interrupt", "()V", "GetInterruptHandler")>]
abstract member Interrupt : unit -> unit
override this.Interrupt : unit -> unit
属性

注釈

このスレッドを中断します。

現在のスレッドがそれ自体を中断している (常に許可されている) 場合を除き、このスレッドの #checkAccess() checkAccess メソッドが呼び出されるため、 SecurityException がスローされる可能性があります。

このスレッドが、Object クラスのObject#wait() wait()Object#wait(long) wait(long)、またはObject#wait(long, int) wait(long, int)メソッド、またはこのクラスの#join()#join(long)#join(long, int)#sleep(long)、または#sleep(long, int)のメソッドの呼び出しでブロックされた場合、その割り込み状態がクリアされ、InterruptedExceptionが受け取られます。

java.nio.channels.InterruptibleChannel InterruptibleChannelの I/O 操作でこのスレッドがブロックされた場合、チャネルは閉じられ、スレッドの割り込み状態が設定され、スレッドはjava.nio.channels.ClosedByInterruptExceptionを受け取ります。

このスレッドが java.nio.channels.Selector でブロックされている場合、スレッドの割り込み状態が設定され、セレクターの java.nio.channels.Selector#wakeup wakeup メソッドが呼び出された場合と同様に、場合によっては 0 以外の値で選択操作から直ちに返されます。

上記のどの条件も保持されていない場合、このスレッドの割り込み状態が設定されます。

アクティブでないスレッドを中断しても、何の影響も与える必要はありません。

Javaドキュメント。

このページの一部は、によって作成および共有され、に記載されている条件に従って使用される作業に基づく変更です。

適用対象

こちらもご覧ください