您的位置:首頁 > 軟件教程 > 教程 > WinDbg異常分析實例:Avalonia框架崩潰問題

WinDbg異常分析實例:Avalonia框架崩潰問題

來源:好特整理 | 時間:2024-08-09 09:54:35 | 閱讀:154 |  標簽: a T VA Net BG 崩潰 AVA 異常 v in 環(huán)境 AV   | 分享到:

一:背景 1. 講故事 前些天有位朋友找到我,說他們的程序崩潰了,也自己分析了下初步結(jié)果,讓我?guī)兔υ俅_認下,既然讓我確認,那就開始dump分析之旅吧。 二:WinDbg 分析 1. 為什么會崩潰 windbg 有一個強大之處就是帶有一個自動化的分析命令 !analyze -v 可以幫助我們快速的分析

前幾天,一位朋友找到我,向我求助。他們的程序崩潰了,經(jīng)過初步分析,他懷疑是Avalonia框架的問題。于是我決定使用WinDbg進行dump分析來確認崩潰的原因。

一:背景

這是一個關(guān)于WinDbg分析的故事。

1. 講故事

朋友發(fā)現(xiàn)他們的程序崩潰了,經(jīng)過初步分析,懷疑是Avalonia框架的問題,于是找到我?guī)兔Υ_認。

二:WinDbg 分析

1. 為什么會崩潰

通過使用WinDbg的命令 !analyze -v 進行分析,得到異常碼 ,表明是遇到用戶回調(diào)時未處理的異常。但其中還隱藏了真實的異常碼。

2. 真實的異常碼在哪里

通過查看異常上下文,定位到RaiseException的父函數(shù),并從異常信息全局變量 g_SavedExceptionInfo 中獲得真實的異常碼 ,即表示訪問違例。

3. 什么邏輯導致的崩潰

根據(jù)匯編代碼分析,崩潰是由Avalonia框架的 RequestCompositionBatchCommitAsync 返回null引起的。進一步搜索代碼,發(fā)現(xiàn)這是Avalonia的一個bug。

WinDbg異常分析實例:Avalonia框架崩潰問題

在類中找到會設置null的方法,確認了這是Avalonia框架的問題。而該版本是非常新的11.1.0.0版本。

WinDbg異常分析實例:Avalonia框架崩潰問題

4. 如何解決呢

鑒于是Avalonia框架的問題,并且該版本非常新,只能向Avalonia的官方提交issue,解決該bug。

三:總結(jié)

這次的生產(chǎn)事故分析讓我對Avalonia框架有了更深入的了解。對Avalonia是否開始替代WPF在工控行業(yè)中的應用也產(chǎn)生了好奇。但就目前來看,穩(wěn)定性方面與WPF相比還有一定差距。期待Avalonia未來能發(fā)布更加穩(wěn)定的版本。

WinDbg異常分析實例:Avalonia框架崩潰問題 小編推薦閱讀

好特網(wǎng)發(fā)布此文僅為傳遞信息,不代表好特網(wǎng)認同期限觀點或證實其描述。

a 1.0
a 1.0
類型:休閑益智  運營狀態(tài):正式運營  語言:中文   

游戲攻略

游戲禮包

游戲視頻

游戲下載

游戲活動

《alittletotheleft》官網(wǎng)正版是一款備受歡迎的休閑益智整理游戲。玩家的任務是對日常生活中的各種雜亂物
崩潰 1.0.0
崩潰 1.0.0
類型:休閑益智  運營狀態(tài):正式運營  語言:中文   

游戲攻略

游戲禮包

游戲視頻

游戲下載

游戲活動

《崩潰》是APPTUTTi開發(fā)的一款擁有像素風格的休閑游戲,你在大陸中要不斷的前進,因為你身后的世界會不停

相關(guān)視頻攻略

更多

掃二維碼進入好特網(wǎng)手機版本!

掃二維碼進入好特網(wǎng)微信公眾號!

本站所有軟件,都由網(wǎng)友上傳,如有侵犯你的版權(quán),請發(fā)郵件[email protected]

湘ICP備2022002427號-10 湘公網(wǎng)安備:43070202000427號© 2013~2025 haote.com 好特網(wǎng)