語言

StackWalker 類別

定義

一個堆疊行者。

[Android.Runtime.Register("java/lang/StackWalker", ApiSince=34, DoNotGenerateAcw=true)]
public sealed class StackWalker : Java.Lang.Object
[<Android.Runtime.Register("java/lang/StackWalker", ApiSince=34, DoNotGenerateAcw=true)>]
type StackWalker = class
    inherit Object
繼承
StackWalker
屬性

備註

一個堆疊行者。

StackWalker#walk walk 方法會為當前執行緒開啟一個序列 StackFrame StackFrame的 s 串流,然後套用該函式來走動該 StackFrame 串流。 串流依序報告堆疊框架元素,從最頂端代表堆疊產生的執行點到最底端的框架。 當方法StackFrame返回時,walk串流即告關閉。 若嘗試重複使用已關閉的溪流, IllegalStateException 則會被拋棄。

<選項 em>堆疊行走選項</em >StackWalker 決定要回傳物件的StackFrame StackFrame資訊。 預設情況下,反射 API 與實作類別的堆疊框架為 Option#SHOW_HIDDEN_FRAMES 隱藏,且 StackFrames 有類別名稱與方法名稱可用,但沒有 StackFrame#getDeclaringClass() Class reference

StackWalker 是執行緒安全的。 多個執行緒可以共用一個 StackWalker 物件,以遍歷其自身的堆疊。 當 a StackWalker 被建立時,會根據它所請求的選項進行權限檢查。 堆疊走路時間不再進行進一步的許可檢查。

新增9。

Java 文件 java.lang.StackWalker

本頁部分內容為基於 Open Source Project 所創建與分享的作品,並依授權條款所描述的使用進行修改。

屬性

名稱 Description
CallerClass

取得 Class 呼叫 getCallerClass者所呼叫的方法的物件。

Class

傳回這個 Object的運行時間類別。

(繼承來源 Object)
Handle

基礎Android實例的句柄。

(繼承來源 Object)
Instance

回傳一個 StackWalker 實例。

JniIdentityHashCode

取得由互通執行時指派給此 Java 對等端的身份雜湊碼。

(繼承來源 Object)
JniManagedPeerState

一個堆疊行者。

(繼承來源 JavaObject)
JniPeerMembers

取得用於調用此 Java 節點成員的 JNI 元資料。

PeerReference

取得這個 Java 節點的 JNI 物件參考。

(繼承來源 Object)
ThresholdClass

此 API 支援 Mono for Android 基礎架構,並非直接從你的程式碼中使用。

(繼承來源 Object)
ThresholdType

此 API 支援 Mono for Android 基礎架構,並非直接從你的程式碼中使用。

(繼承來源 Object)

方法

名稱 Description
Clone()

建立並傳回這個 對象的複本。

(繼承來源 Object)
Construct(JniObjectReference, JniObjectReferenceOptions)

一個堆疊行者。

(繼承來源 JavaObject)
Dispose()

釋放該 Java 節點所持有的資源。

(繼承來源 Object)
Dispose(Boolean)

釋放該 Java 節點所持有的資源。

(繼承來源 Object)
DisposeUnlessReferenced()

一個堆疊行者。

(繼承來源 JavaObject)
Equals(Object)

一個堆疊行者。

(繼承來源 JavaObject)
Equals(Object)

指出其他物件是否「等於」這個物件。

(繼承來源 Object)
ForEach(IConsumer)

對當前執行緒中串流的 StackFrame 每個元素執行指定動作,從堆疊的頂端框架遍歷,該幀即為呼叫此 forEach 方法的方法。

GetHashCode()

傳回此物件的雜湊碼值。

(繼承來源 Object)
GetInstance(ICollection<StackWalker.Option>, Int32)

回傳 StackWalker 一個實例,並指定 options 可存取的堆疊框架資訊。

GetInstance(ICollection<StackWalker.Option>)

回傳 StackWalker 一個實例,並指定 options 可存取的堆疊框架資訊。

GetInstance(StackWalker+Option)

回傳一個設定為指定選項的堆疊步行器。

JavaFinalize()
已淘汰.

當垃圾收集決定不再參考物件時,垃圾收集行程在 物件上呼叫。

(繼承來源 Object)
Notify()

喚醒正在等候此物件監視器的單一線程。

(繼承來源 Object)
NotifyAll()

喚醒正在等候此物件監視器的所有線程。

(繼承來源 Object)
SetHandle(IntPtr, JniHandleOwnership)

設定 Handle 屬性。

(繼承來源 Object)
SetPeerReference(JniObjectReference, JniObjectReferenceOptions)

一個堆疊行者。

(繼承來源 JavaObject)
ToArray<T>()

從這個 Java 陣列包裝器建立一個受管理陣列。

(繼承來源 Object)
ToString()

傳回物件的字串表示。

(繼承來源 Object)
UnregisterFromRuntime()

將此 Java 節點從互通執行時中取消註冊。

(繼承來源 Object)
Wait()

讓目前線程等候直到喚醒為止,通常是藉由em <notified/em>或<em>interrupted</em> 來喚醒它。<>

(繼承來源 Object)
Wait(Int64, Int32)

讓目前的線程等到喚醒為止,通常是因為 <em>notified</em> 或 <em>interrupted</em>,或直到經過一定數量的實時為止。

(繼承來源 Object)
Wait(Int64)

讓目前的線程等到喚醒為止,通常是因為 <em>notified</em> 或 <em>interrupted</em>,或直到經過一定數量的實時為止。

(繼承來源 Object)

明確介面實作

名稱 Description
IJavaPeerable.Disposed()

一個堆疊行者。

(繼承來源 JavaObject)
IJavaPeerable.Finalized()

一個堆疊行者。

(繼承來源 JavaObject)
IJavaPeerable.JniObjectReferenceControlBlock

一個堆疊行者。

(繼承來源 JavaObject)
IJavaPeerable.SetJniIdentityHashCode(Int32)

一個堆疊行者。

(繼承來源 JavaObject)
IJavaPeerable.SetJniManagedPeerState(JniManagedPeerStates)

一個堆疊行者。

(繼承來源 JavaObject)
IJavaPeerable.SetPeerReference(JniObjectReference)

一個堆疊行者。

(繼承來源 JavaObject)

擴充方法

名稱 Description
GetJniTypeName(IJavaPeerable)

取得實例 self類型的 JNI 名稱。

JavaAs<TResult>(IJavaPeerable)

試著強制self輸入 TResult,檢查 強制在 Java 端是否有效。

JavaCast<TResult>(IJavaObject)

執行 Android 執行時檢查型別轉換。

JavaCast<TResult>(IJavaObject)

一個堆疊行者。

TryJavaCast<TResult>(IJavaPeerable, TResult)

試著強制self輸入 TResult,檢查 強制在 Java 端是否有效。

適用於