Handler 클래스

정의

처리기를 사용하면 스레드MessageQueue의 와 연결된 및 Runnable 개체를 보내고 처리 Message 할 수 있습니다.

[Android.Runtime.Register("android/os/Handler", DoNotGenerateAcw=true)]
public class Handler : Java.Lang.Object
[<Android.Runtime.Register("android/os/Handler", DoNotGenerateAcw=true)>]
type Handler = class
    inherit Object
상속
Handler
파생
특성

설명

처리기를 사용하면 스레드MessageQueue의 와 연결된 및 Runnable 개체를 보내고 처리 Message 할 수 있습니다. 각 처리기 instance 단일 스레드 및 해당 스레드의 메시지 큐와 연결됩니다. 새 처리기를 만들 때 에 바인딩 Looper됩니다. 해당 Looper의 메시지 큐에 메시지 및 실행 가능 개체를 전달하고 해당 Looper의 스레드에서 실행합니다.

처리기에는 두 가지 기본 사용이 있습니다. (1)은 메시지와 실행 가능 항목을 미래의 특정 시점에 실행하도록 예약하고 (2)는 사용자 고유의 스레드와 다른 스레드에서 수행할 작업을 큐에 넣기 위한 것입니다.

메시지 예약은 , , #postAtTime(Runnable, long), #postDelayed, #sendEmptyMessage#sendMessage, #sendMessageAtTime#sendMessageDelayed 메서드를 #post사용하여 수행됩니다. em post/em> 버전을 사용하면 수신될 때 메시지 큐에 의해 호출될 Runnable 개체를 큐에 추가할 수 있습니다. <em>sendMessage</em> 버전을 사용하면 처리기의 #handleMessage 메서드에서 처리할 데이터 번들이 포함된 개체를 큐에 넣기 Message 할 수 있습니다(처리기의 하위 클래스를 구현해야 함).<><

처리기를 게시하거나 보낼 때 메시지 큐가 준비되는 즉시 항목을 처리하도록 허용하거나 처리되기 전에 지연을 지정하거나 처리할 절대 시간을 지정할 수 있습니다. 후자의 두 가지를 사용하면 시간 제한, 틱 및 기타 타이밍 기반 동작을 구현할 수 있습니다.

애플리케이션에 대한 프로세스가 만들어지면 해당 기본 스레드는 최상위 애플리케이션 개체(활동, 브로드캐스트 수신기 등) 및 만든 모든 창을 관리하는 메시지 큐를 실행하는 데만 전념합니다. 사용자 고유의 스레드를 만들고 처리기를 통해 기본 애플리케이션 스레드와 다시 통신할 수 있습니다. 이 작업은 이전과 동일한 <em>post</em> 또는 <em>sendMessage</em> 메서드를 새 스레드에서 호출하여 수행됩니다. 그러면 지정된 Runnable 또는 Message가 처리기의 메시지 큐에서 예약되고 적절한 경우 처리됩니다.

에 대한 Java 설명서입니다 android.os.Handler.

이 페이지의 일부는 만들고 공유하며 에 설명된 조건에 따라 사용되는 작업을 기반으로 수정됩니다.

생성자

Handler()

기본 생성자는 이 처리기를 현재 스레드의 Looper 에 연결합니다.

Handler(Action<Message>)

처리기를 사용하면 스레드MessageQueue의 와 연결된 및 Runnable 개체를 보내고 처리 Message 할 수 있습니다.

Handler(Handler+ICallback)

생성자는 이 처리기를 Looper 현재 스레드에 대한 에 연결하고 메시지를 처리할 수 있는 콜백 인터페이스를 사용합니다.

Handler(IntPtr, JniHandleOwnership)

JNI 개체의 관리형 표현을 만들 때 사용되는 생성자입니다. 런타임에서 호출합니다.

Handler(Looper)

기본값 대신 제공된 Looper 를 사용합니다.

Handler(Looper, Handler+ICallback)

기본값 대신 제공된 Looper 를 사용하고 메시지를 처리할 콜백 인터페이스를 사용합니다.

속성

Class

Object의 런타임 클래스를 반환합니다.

(다음에서 상속됨 Object)
Handle

기본 Android instance 대한 핸들입니다.

(다음에서 상속됨 Object)
JniIdentityHashCode

처리기를 사용하면 스레드MessageQueue의 와 연결된 및 Runnable 개체를 보내고 처리 Message 할 수 있습니다.

(다음에서 상속됨 Object)
JniPeerMembers

처리기를 사용하면 스레드MessageQueue의 와 연결된 및 Runnable 개체를 보내고 처리 Message 할 수 있습니다.

Looper
PeerReference

처리기를 사용하면 스레드MessageQueue의 와 연결된 및 Runnable 개체를 보내고 처리 Message 할 수 있습니다.

(다음에서 상속됨 Object)
ThresholdClass

이 API는 Android용 Mono 인프라를 지원하며 코드에서 직접 사용할 수 없습니다.

ThresholdType

이 API는 Android용 Mono 인프라를 지원하며 코드에서 직접 사용할 수 없습니다.

메서드

Clone()

이 개체의 복사본을 만들고 반환합니다.

(다음에서 상속됨 Object)
CreateAsync(Looper)

게시된 메시지와 runnable에 디스플레이 vsync와 같은 동기화 장벽이 적용되지 않는 새 처리기를 만듭니다.

CreateAsync(Looper, Handler+ICallback)

게시된 메시지와 runnable에 디스플레이 vsync와 같은 동기화 장벽이 적용되지 않는 새 처리기를 만듭니다.

DispatchMessage(Message)

여기에서 시스템 메시지를 처리합니다.

Dispose()

처리기를 사용하면 스레드MessageQueue의 와 연결된 및 Runnable 개체를 보내고 처리 Message 할 수 있습니다.

(다음에서 상속됨 Object)
Dispose(Boolean)

처리기를 사용하면 스레드MessageQueue의 와 연결된 및 Runnable 개체를 보내고 처리 Message 할 수 있습니다.

(다음에서 상속됨 Object)
Dump(IPrinter, String)
DumpAsync(IPrinter, String)

처리기를 사용하면 스레드MessageQueue의 와 연결된 및 Runnable 개체를 보내고 처리 Message 할 수 있습니다.

Equals(Object)

다른 개체가 이 개체와 "같음"인지 여부를 나타냅니다.

(다음에서 상속됨 Object)
GetHashCode()

개체의 해시 코드 값을 반환합니다.

(다음에서 상속됨 Object)
GetMessageName(Message)

지정된 메시지의 이름을 나타내는 문자열을 반환합니다.

HandleMessage(Message)

서브클래스는 메시지를 수신하려면 이를 구현해야 합니다.

HasCallbacks(IRunnable)

메시지 큐에 콜백 r이 있는 메시지의 보류 중인 게시물이 있는지 확인합니다.

HasMessages(Int32)

메시지 큐에 'what' 코드가 있는 메시지의 보류 중인 게시물이 있는지 확인합니다.

HasMessages(Int32, Object)

메시지 큐에 'what' 코드가 있고 obj가 'object'인 메시지의 보류 중인 게시물이 있는지 확인합니다.

JavaFinalize()

가비지 수집에서 개체에 대한 참조가 더 이상 없다고 판단할 때 개체의 가비지 수집기에서 호출됩니다.

(다음에서 상속됨 Object)
Notify()

이 개체의 모니터에서 대기 중인 단일 스레드를 해제합니다.

(다음에서 상속됨 Object)
NotifyAll()

이 개체의 모니터에서 대기 중인 모든 스레드를 해제합니다.

(다음에서 상속됨 Object)
ObtainMessage()

전역 메시지 풀에서 새 android.os.Message Message 를 반환합니다.

ObtainMessage(Int32)

와 동일 #obtainMessage()하며 반환된 메시지의 멤버도 설정합니다.

ObtainMessage(Int32, Int32, Int32)

와 동일 #obtainMessage()하며 반환된 메시지의 arg1 및 arg2 멤버도 설정합니다.

ObtainMessage(Int32, Int32, Int32, Object)

와 동일 #obtainMessage()하며 반환된 Message에서 obj, arg1 및 arg2 값도 설정합니다.

ObtainMessage(Int32, Object)

와 동일 #obtainMessage()하며 반환된 메시지의 및 obj 멤버도 설정합니다.

Post(Action)

처리기를 사용하면 스레드MessageQueue의 와 연결된 및 Runnable 개체를 보내고 처리 Message 할 수 있습니다.

Post(IRunnable)

Runnable r이 메시지 큐에 추가되도록 합니다.

PostAtFrontOfQueue(Action)

처리기를 사용하면 스레드MessageQueue의 와 연결된 및 Runnable 개체를 보내고 처리 Message 할 수 있습니다.

PostAtFrontOfQueue(IRunnable)

Runnable을 구현하는 개체에 메시지를 게시합니다.

PostAtTime(Action, Int64)

처리기를 사용하면 스레드MessageQueue의 와 연결된 및 Runnable 개체를 보내고 처리 Message 할 수 있습니다.

PostAtTime(Action, Object, Int64)

처리기를 사용하면 스레드MessageQueue의 와 연결된 및 Runnable 개체를 보내고 처리 Message 할 수 있습니다.

PostAtTime(IRunnable, Int64)

Var uptimeMillis</var>에서 지정된 특정 시간에 실행되도록 Runnable r을 메시지 큐에 <>추가합니다.

PostAtTime(IRunnable, Object, Int64)

Var uptimeMillis</var>에서 지정된 특정 시간에 실행되도록 Runnable r을 메시지 큐에 <>추가합니다.

PostDelayed(Action, Int64)

처리기를 사용하면 스레드MessageQueue의 와 연결된 및 Runnable 개체를 보내고 처리 Message 할 수 있습니다.

PostDelayed(IRunnable, Int64)

지정된 시간이 경과한 후 Runnable r이 메시지 큐에 추가되도록 합니다.

PostDelayed(IRunnable, Object, Int64)

지정된 시간이 경과한 후 Runnable r이 메시지 큐에 추가되도록 합니다.

RemoveCallbacks(Action)

처리기를 사용하면 스레드MessageQueue의 와 연결된 및 Runnable 개체를 보내고 처리 Message 할 수 있습니다.

RemoveCallbacks(Action, Object)

처리기를 사용하면 스레드MessageQueue의 와 연결된 및 Runnable 개체를 보내고 처리 Message 할 수 있습니다.

RemoveCallbacks(IRunnable)

메시지 큐에 있는 Runnable r의 보류 중인 게시물을 모두 제거합니다.

RemoveCallbacks(IRunnable, Object)

메시지 큐에 있는 Object var token</var을 사용하여 Runnable <var>>r</var>>의 보류 중인 게시물을 모두 제거합니다.<

RemoveCallbacksAndMessages(Object)

var obj</var <> 이 var>>token</var>인 <콜백 및 보낸 메시지의 보류 중인 게시물을 제거합니다.

RemoveMessages(Int32)

메시지 큐에 있는 'what' 코드가 있는 메시지의 보류 중인 게시물을 모두 제거합니다.

RemoveMessages(Int32, Object)

'what' 코드가 있고 obj가 메시지 큐에 있는 'object'인 메시지의 보류 중인 게시물을 모두 제거합니다.

SendEmptyMessage(Int32)

값만 포함하는 메시지를 보냅니다.

SendEmptyMessageAtTime(Int32, Int64)

특정 시간에 배달할 값만 포함하는 메시지를 보냅니다.

SendEmptyMessageDelayed(Int32, Int64)

지정된 시간이 경과한 후에 배달할 값만 포함하는 메시지를 보냅니다.

SendMessage(Message)

현재 시간 전에 보류 중인 모든 메시지를 보낸 후 메시지 큐의 끝에 메시지를 푸시합니다.

SendMessageAtFrontOfQueue(Message)

메시지 큐의 앞면에 메시지를 큐에 넣기하여 메시지 루프의 다음 반복에서 처리합니다.

SendMessageAtTime(Message, Int64)

절대 시간(밀리초) <>var uptimeMillis</var 전에 보류 중인 모든 메시지 후 메시지 큐에 메시지를 큐에 넣습니다>.

SendMessageDelayed(Message, Int64)

(현재 시간 + delayMillis) 전에 보류 중인 모든 메시지 후에 메시지 큐에 메시지를 큐에 넣습니다.

SetHandle(IntPtr, JniHandleOwnership)

Handle 속성을 설정합니다.

(다음에서 상속됨 Object)
ToArray<T>()

처리기를 사용하면 스레드MessageQueue의 와 연결된 및 Runnable 개체를 보내고 처리 Message 할 수 있습니다.

(다음에서 상속됨 Object)
ToString()

개체의 문자열 표현을 반환합니다.

(다음에서 상속됨 Object)
UnregisterFromRuntime()

처리기를 사용하면 스레드MessageQueue의 와 연결된 및 Runnable 개체를 보내고 처리 Message 할 수 있습니다.

(다음에서 상속됨 Object)
Wait()

현재 스레드가 깨어날 때까지 대기하게 합니다( 일반적으로 <알림을 받><거나 <>중단/>em>)합니다<.

(다음에서 상속됨 Object)
Wait(Int64)

현재 스레드가 깨어날 때까지 대기하게 합니다. 일반적으로 <>알림을 받<거나 <중단</>내보내>>거나 일정량의 실시간이 경과할 때까지 대기합니다.

(다음에서 상속됨 Object)
Wait(Int64, Int32)

현재 스레드가 깨어날 때까지 대기하게 합니다. 일반적으로 <>알림을 받<거나 <중단</>내보내>>거나 일정량의 실시간이 경과할 때까지 대기합니다.

(다음에서 상속됨 Object)

명시적 인터페이스 구현

IJavaPeerable.Disposed()

처리기를 사용하면 스레드MessageQueue의 와 연결된 및 Runnable 개체를 보내고 처리 Message 할 수 있습니다.

(다음에서 상속됨 Object)
IJavaPeerable.DisposeUnlessReferenced()

처리기를 사용하면 스레드MessageQueue의 와 연결된 및 Runnable 개체를 보내고 처리 Message 할 수 있습니다.

(다음에서 상속됨 Object)
IJavaPeerable.Finalized()

처리기를 사용하면 스레드MessageQueue의 와 연결된 및 Runnable 개체를 보내고 처리 Message 할 수 있습니다.

(다음에서 상속됨 Object)
IJavaPeerable.JniManagedPeerState

처리기를 사용하면 스레드MessageQueue의 와 연결된 및 Runnable 개체를 보내고 처리 Message 할 수 있습니다.

(다음에서 상속됨 Object)
IJavaPeerable.SetJniIdentityHashCode(Int32)

처리기를 사용하면 스레드MessageQueue의 와 연결된 및 Runnable 개체를 보내고 처리 Message 할 수 있습니다.

(다음에서 상속됨 Object)
IJavaPeerable.SetJniManagedPeerState(JniManagedPeerStates)

처리기를 사용하면 스레드MessageQueue의 와 연결된 및 Runnable 개체를 보내고 처리 Message 할 수 있습니다.

(다음에서 상속됨 Object)
IJavaPeerable.SetPeerReference(JniObjectReference)

처리기를 사용하면 스레드MessageQueue의 와 연결된 및 Runnable 개체를 보내고 처리 Message 할 수 있습니다.

(다음에서 상속됨 Object)

확장 메서드

JavaCast<TResult>(IJavaObject)

Android 런타임 확인 형식 변환을 수행합니다.

JavaCast<TResult>(IJavaObject)

처리기를 사용하면 스레드MessageQueue의 와 연결된 및 Runnable 개체를 보내고 처리 Message 할 수 있습니다.

GetJniTypeName(IJavaPeerable)

처리기를 사용하면 스레드MessageQueue의 와 연결된 및 Runnable 개체를 보내고 처리 Message 할 수 있습니다.

적용 대상