Bagikan melalui


Membuat peta visual dari tumpukan panggilan saat debugging (C#, Visual Basic, C++, JavaScript)

Buat peta kode untuk melacak stack panggilan secara visual saat Anda melakukan debugging. Anda dapat membuat catatan di peta untuk melacak apa yang dilakukan kode, sehingga Anda dapat fokus pada menemukan bug.

Untuk detail perintah dan tindakan yang dapat Anda gunakan dengan peta kode, lihat Menelusuri dan menyusun ulang peta kode.

Penting

Anda hanya dapat membuat peta kode di edisi Visual Studio Enterprise.

Berikut adalah lihat sekilas peta kode:

Penelusuran kesalahan dengan tumpukan panggilan pada peta kode

Memetakan tumpukan panggilan

  1. Dalam proyek Visual Studio Enterprise C#, Visual Basic, C++, atau JavaScript, mulai debugging dengan memilih Debug>Mulai Debugging atau tekan F5.

  2. Setelah aplikasi Anda memasuki mode jeda atau Anda masuk ke fungsi, pilihPeta Kode>, atau tekan Ctrl+Shift+`.

    Tumpukan panggilan saat ini muncul dalam warna oranye pada peta kode baru:

    Lihat tumpukan panggilan pada peta kode

Peta kode diperbarui secara otomatis saat Anda melanjutkan debugging. Mengubah item peta atau tata letak tidak memengaruhi kode dengan cara apa pun. Jangan ragu untuk mengganti nama, memindahkan, atau menghapus apa pun di peta.

Untuk mendapatkan informasi selengkapnya tentang item, arahkan kursor ke item tersebut dan lihat tooltip item tersebut. Anda juga dapat memilih Legenda di toolbar untuk mempelajari arti setiap ikon.

Legenda Peta Kode

Nota

Pesan Diagram mungkin didasarkan pada versi kode yang lebih lama di bagian atas peta kode berarti bahwa kode mungkin telah berubah setelah Anda terakhir memperbarui peta. Misalnya, panggilan di peta mungkin tidak ada dalam kode lagi. Tutup pesan, lalu coba bangun kembali solusi sebelum memperbarui peta lagi.

Memetakan kode eksternal

Secara default, hanya kode Anda sendiri yang muncul di peta. Untuk melihat kode eksternal di peta:

  • Klik kanan di jendela Tumpukan Panggilan dan pilih Perlihatkan Kode Eksternal:

    Menampilkan kode eksternal menggunakan jendela Call Stack

  • Atau, kosongkan kotak centang Aktifkan Hanya Kode Saya di Visual Studio:

    Opsi ini tersedia di panel OpsiAlat (atau >) di bawah bagianUmum>>:

    Cuplikan layar yang memperlihatkan cara memilih opsi Aktifkan Just My Code di Visual Studio.

    Opsi ini tersedia dalam dialog Alat (atau Debug) >Opsi di bawah bagian Penelusuran Kesalahan>Umum:

    Perlihatkan kode eksternal menggunakan dialog Opsi

Mengontrol tata letak peta

Mengubah tata letak peta tidak memengaruhi kode dengan cara apa pun.

Untuk mengontrol tata letak peta, pilih menu Tata Letak pada toolbar peta.

Di menu Tata Letak , Anda dapat:

  • Ubah tata letak default.
  • Hentikan pengaturan ulang peta secara otomatis, dengan menghapus centang pada Tata Letak Secara Otomatis saat Penelusuran Kesalahan.
  • Susun ulang peta sesedikit mungkin saat Anda menambahkan item, dengan menghapus centang Tata Letak Bertahap.

Membuat catatan tentang kode

Anda dapat menambahkan komentar untuk melacak apa yang terjadi dalam kode.

Untuk menambahkan komentar, klik kanan di peta kode dan pilih Edit>Komentar Baru, lalu ketik komentar.

Untuk menambahkan baris baru dalam komentar, tekan Shift+Enter.

Tambahkan komentar ke tumpukan panggilan pada peta kode

Perbarui peta dengan tumpukan panggilan berikutnya

Saat Anda menjalankan aplikasi ke titik henti berikutnya atau masuk ke fungsi, peta menambahkan tumpukan panggilan baru secara otomatis.

Memperbarui peta kode dengan tumpukan panggilan berikutnya

Untuk menghentikan peta menambahkan tumpukan panggilan baru secara otomatis, pilih Perlihatkan tumpukan panggilan pada peta kode secara otomatis pada toolbar peta kode. Peta terus menyoroti tumpukan panggilan yang ada. Untuk menambahkan tumpukan panggilan saat ini secara manual ke peta, tekan Ctrl+Shift+`.

Menambahkan kode terkait ke peta

Sekarang setelah Anda memiliki peta, di C# atau Visual Basic, Anda dapat menambahkan item seperti bidang, properti, dan metode lainnya, untuk melacak apa yang terjadi dalam kode.

Untuk masuk ke definisi metode dalam kode, klik dua kali metode di peta, atau pilih dan tekan F12, atau klik kanan dan pilih Buka Definisi.

Buka definisi kode untuk metode pada peta kode

Untuk menambahkan item yang ingin Anda lacak ke peta, klik kanan metode dan pilih item yang ingin Anda lacak. Item yang terakhir ditambahkan muncul dalam warna hijau.

Bidang yang terkait dengan metode pada peta kode tumpukan panggilan

Nota

Secara default, menambahkan item ke peta juga menambahkan simpul grup induk seperti kelas, namespace, dan assembly. Anda dapat menonaktifkan dan mengaktifkan fitur ini dengan memilih tombol Sertakan Orang Tua pada toolbar peta kode, atau dengan menekan Ctrl saat Anda menambahkan item.

Perlihatkan bidang dalam metode pada peta kode call stack

Lanjutkan membangun peta untuk melihat lebih banyak kode.

Lihat metode yang menggunakan bidang: memanggil peta kode tumpukan

Metode yang menggunakan bidang pada peta kode tumpukan panggilan

Menemukan bug menggunakan peta

Memvisualisasikan kode Anda dapat membantu Anda menemukan bug lebih cepat. Misalnya, Anda menyelidiki bug di aplikasi gambar. Ketika Anda menggambar garis dan mencoba untuk membatalkannya, tidak ada yang terjadi sampai Anda menggambar garis lain.

Jadi Anda mengatur titik henti dalam clearmetode , undo, dan Repaint , mulai debugging, dan buat peta seperti ini:

Menambahkan tumpukan panggilan lain ke peta kode

Anda melihat bahwa semua gerakan pengguna di peta memanggil Repaint, kecuali untuk undo. Ini mungkin menjelaskan mengapa undo tidak segera berfungsi.

Setelah Anda memperbaiki bug dan terus menjalankan aplikasi, peta menambahkan panggilan baru dari undo ke Repaint:

Tambahkan panggilan metode baru untuk memanggil tumpukan pada peta kode

Berbagi peta dengan orang lain

Anda dapat mengekspor peta, mengirimkannya ke orang lain dengan Microsoft Outlook, menyimpannya ke solusi Anda, dan memeriksanya ke kontrol versi.

Untuk berbagi atau menyimpan peta, gunakan Bagikan di toolbar peta kode.

Bagikan peta kode stack panggilan dengan orang lain