初步調(diào)試,發(fā)現(xiàn)某個(gè)類的構(gòu)造函數(shù)進(jìn)了,但是在左花括號(hào)的地方就卡住了,沒(méi)有往后走。
一開(kāi)始挺驚奇,過(guò)會(huì)兒就想到,類的構(gòu)造函數(shù)里會(huì)被編譯器插入一些沒(méi)有顯示初始化的成員的初始化語(yǔ)句。所以講F10改為F11調(diào)試。
慢慢似乎找到問(wèn)題函數(shù)了,正準(zhǔn)備再重開(kāi)調(diào)試?yán)^續(xù)跟時(shí),朋友表示按下vc的暫停鍵,照做,“我擦——”之后是崇拜的口水。
問(wèn)題原因:while的退出變量沒(méi)有自增,導(dǎo)致死循環(huán)了。
總結(jié):
程序卡在哪兒,基本就是死循環(huán)或者死鎖。死循環(huán)的發(fā)現(xiàn),可以看cpu占用來(lái)佐證。問(wèn)題定位,暫停調(diào)試。
死鎖的定位,可以看stack,里邊應(yīng)該有wait之類的。