2011-11-15 38 views
0

我的多線程應用程序中出現了分段錯誤,這個問題正變得令人頭疼。它看起來像是在調用usleep時產生的問題。我試圖用nanosleep替換它,但它仍然存在。它也出現在sem_timedwait調用附近。多線程應用程序中的分段錯誤

我用gcc和-lpthread選項編譯。

這可能是分段故障的原因嗎?可能是什麼原因?

+2

更可能是您的代碼中出現分段錯誤的根源。在你展示你的代碼之前,說出什麼是錯的是不可能的。 –

+0

這個問題並不適合SO問題/答案的格式。嘗試提出更具體的問題。 – mydogisbox

+0

如果你想幫助調試你的代碼,你需要發佈一個MINIMAL COMPLETE例子。它需要很小,因此它適合在一個帖子中,但也需要完整,並顯示重現問題所需的一切。沒有這一點,你不會得到任何有用的幫助。 –

回答

3

分段錯誤意味着您正在訪問您無權訪問的內存。這通常是由於數組上的邊界錯誤或陳舊的指針,例如免費後訪問。調用睡眠似乎極不可能與此相關,除非您將睡眠用作同步工具!你可以使用valgrind來追蹤你的錯誤。