我一直在嘗試提供更好時,一個錯誤的異步代碼發生在AS3調試信息報告。AS3錯誤從事件回調
至於是默認的,拿在那裏我強迫一個空指針在計時器回調(github gist),我得到以下堆棧跟蹤回控制檯上的情況下,錯誤報告不佳的例子:
TypeError: Error #1009: Cannot access a property or method of a null object reference.
at Function/<anonymous>()[/[path-to-source-file]/TestClass.as:14]
at flash.utils::Timer/_timerDispatch()
at flash.utils::Timer/tick()
這告訴我很少有關定時器回調如何實際鏈接到我的代碼。
的問題是:我怎樣才能獲得什麼代碼創建的回調信息?
我已經加入我下面的解決方案之一。我很想看看這是否可以改進。
這就是解決方案的角度來看,這樣的錯誤是很方便的事情,如果他們在適當的時候創建;) –
您可以從多個位置註冊相同的偵聽器功能。您的解決方案將爲每個聽衆註冊創建一個(空)錯誤,當我明白您的要做什麼時。空物體實際上並不是我們想要的。我看到的最乾淨的解決方案是針對不同的客戶端使用不同的回調,以便Flash錯誤可以輕鬆地與聽衆註冊上下文相匹配。 –
失去跟蹤創建者的能力非常容易。你所需要做的就是從你的代碼中獲得一個間接級別(就像在這個例子中那樣),而你對創建調用來自哪裏卻一無所知。 –