menonton hanya istirahat pada menulis, jam tangan Anda istirahat membaca, dan menonton membiarkan Anda istirahat membaca / menulis.
Anda dapat mengatur titik pantau baca di lokasi memori:
gdb$ rwatch *0xfeedface
Hardware read watchpoint 2: *0xfeedface
tetapi satu batasan berlaku untuk perintah rwatch dan awatch; Anda tidak dapat menggunakan variabel gdb dalam ekspresi:
gdb$ rwatch $ebx+0xec1a04f
Expression cannot be implemented with read/access watchpoint.
Jadi, Anda harus mengembangkannya sendiri:
gdb$ print $ebx
$13 = 0x135700
gdb$ rwatch *0x135700+0xec1a04f
Hardware read watchpoint 3: *0x135700 + 0xec1a04f
gdb$ c
Hardware read watchpoint 3: *0x135700 + 0xec1a04f
Value = 0xec34daf
0x9527d6e7 in objc_msgSend ()
Sunting: Oh, dan omong-omong. Anda memerlukan dukungan perangkat keras atau perangkat lunak . Perangkat lunak jelas jauh lebih lambat. Untuk mengetahui apakah OS Anda mendukung titik pandang perangkat keras, Anda dapat melihat pengaturan lingkungan titik penggunaan dapat-hw .
gdb$ show can-use-hw-watchpoints
Debugger's willingness to use watchpoint hardware is 1.
watch -location mTextFormatted
.