您好有一種方法可以知道函數的調用者類名,特別是對於Java-GWT應用程序嗎?如何知道函數的調用者類
6
A
回答
4
Thread.currentThread
不GWT支持(請記住,Java代碼被編譯成JavaScript),所以這是一個可能重複:
How do you find out the caller function in JavaScript?
在GWT你只要寫一個JSNI包裝:
public static native void whosMyCaller() /*-{
$wnd.alert(arguments.callee.caller.toString());
}-*/;
0
這在GWT中並不是真的可行,因爲在生產模式下代碼經過嚴格優化,內嵌和刪除不可訪問的代碼。例如。在編譯模式下,大多數函數不屬於任何類,因爲GWT認爲類定義是冗餘的。從理論上講,可以找到調用者類(如果你嘗試分析編譯報告或者通過JSNI),但是由於內部優化,你會得到很多奇怪的結果(例如,即使你的函數只在一些在編譯模式下,您可能會發現它直接從入口點onLoad方法調用)
相關問題
- 1. 如何知道函數的調用者
- 2. 如何在知道函數名稱的類中調用函數?
- 3. 如何使用dlsym()調用函數,其中我知道參數的數量,但不知道函數的類型,也不知道函數的返回類型?
- 4. 函數的調用者如何知道是否使用了「返回值優化」?
- 5. PHP:我怎麼知道函數的調用者?
- 6. 如何知道由nquad調用的C函數中的維數?
- 7. 知道調用函數的組件
- 8. 如何jQuery函數知道
- 9. 調用函數時不知道名字
- 10. 調用函數只在C運行時知道參數類型?
- 11. 函數可以知道它是如何被調用的嗎?
- 12. 如何知道在php中調用函數的位置?
- 13. MFC - 如何知道CWnd的Create函數被調用?
- 14. 如何讓知道調用的函數(而不是函數參數)調用函數的變量
- 15. 如何在java中知道我的類和方法的調用者?
- 16. 如何在使用RedirectToAction時知道調用者/父ActionResult?
- 17. 如何從pimpl類調用一個調用者類的拷貝構造函數?
- 18. 如何知道(使用/作者)
- 19. 調用C++成員函數指針而不知道哪個類
- 20. 如何知道函數是否被第一次調用
- 21. 如何知道調用了什麼javascript函數?
- 22. 如何從Ruby SDK調用AWS Lambda函數時知道context.fail?
- 23. 如何知道函數是通過表單還是API調用
- 24. 如何知道從哪裏調用函數?
- 25. 如何知道我是否在調用jQuery函數?
- 26. 如何在我無法知道簽名時調用函數?
- 27. Flask如何知道要調用哪個裝飾函數?
- 28. 我如何知道哪個函數會被調用?
- 29. 我可以知道如何調用PHP函數嗎?
- 30. 如何知道哪個div在一個類中調用了一個函數?
可能重複的[Java:Find Caller Class](http://stackoverflow.com/questions/2887607/java-find-調用者類) –
反射和相關API不由GWT模擬。你需要找到另一種方式來實現你想要的。 – Strelok