Jadi perusahaan saya menggunakan menyenangkan buggy program yang disebut Rasional Memurnikan (sebagai plugin untuk Microsoft Visual Studio Pengembang) untuk mengelola kebocoran memori. Program ini berkenan untuk membiarkan anda klik pada kebocoran memori setelah anda telah mengalami hal itu, dan kemudian melompat ke baris yang terjadi kebocoran pada.
Sayangnya Memurnikan rusak dan Memurnikan tidak akan melompat ke tempat bahwa kebocoran terjadi itu hanya menyebutkan kelas dan metode bahwa kebocoran terjadi di. Sayangnya, kadang-kadang ini adalah sebagai berguna sebagai perekrutan panduan untuk membantu anda berburu beruang dan memiliki dia arahkan ke hutan dan memberitahu anda ada beruang di sana.
Apakah ada yang dengan Memurnikan pengalaman punya ide bagaimana saya bisa memperbaiki ini masalah atau memiliki panduan yang baik untuk melihat meskipun?
Umumnya, anda memiliki dua pilihan, satu mengecualikan modul DLL's dari instrumentasi dalam Memurnikan, membantu beberapa kali. Kedua adalah mendapatkan BoundsChecker, ini waktu kompilasi instrumentasi jauh lebih lambat namun tingkat detail adalah urutan besarnya lebih baik.
Kita umumnya menggunakan Memurnikan pada saat check-in, kewarasan memeriksa, dan BoundsChecker ketika kita tahu bug/crash ada.
BoundsChecker memiliki beberapa fitur bagus seperti hanya instrumen file A.cpp & B.cpp, termasuk semua sisanya.
Diketahui tidak satu pun dari dua fungsi aplikasi pada 64-bit sistem operasi, dan BoundsChecker tidak akan menginstal pada 64 bit OS. Yang paling membuat frustasi jika anda beralih ke native 64 bit dengan 32 bit port kembali!
Memurnikan adalah seperti pisau swiss. Jika anda tahu bagaimana menggunakannya, anda akan mendapatkan beberapa hasil, bukan yang terbaik tapi masih hasil. Jika anda don't, itu akan crash, karena itu hanya program lain yang berjalan pada Windows.
Pada akhirnya anda akan membutuhkan banyak kesabaran, membangun kembali dan sedikit keberuntungan.
Memurnikan dilengkapi dengan script yang disebut ScanVSSolutionForPurifyPlus.pl yang akan memastikan bahwa file proyek anda memiliki semua pengaturan yang tepat untuk Memurnikan untuk bekerja dengan baik. Jika anda belum't berjalan, berikan itu pergi.
(Saya've pribadi yang digunakan ScanVSSolutionForPurifyPlus.pl pada solusi, dan bekerja seperti pesona. Satu peringatan: ketika anda memberikan nama anda .sln
file, anda mungkin perlu memberikan nama path penuh.)
Apakah anda yakin anda telah membangun debug? Atau lebih tepatnya anda memiliki semua PDB's diaktifkan? Mencoba WindDbg pada executable anda dan memeriksa dengan !lmi perintah apa yang terlihat.
Seluruh kode dengan benar instrumented?
Juga pertimbangkan untuk menggunakan sesuatu yang lain seperti free Visual Leak Detector atau Microsoft's alat LeakDiag.
Aku digunakan Memurnikan sekitar 5 tahun yang lalu. Itu benar-benar terkelupas kemudian. Mereka terus menjanjikan untuk memperbaiki semua bug di 'rilis berikutnya'. Kita menyerah pada akhirnya. Kita hanya bisa bertanya-tanya jika mereka menggunakan mereka sendiri QA yang sesuai pada produk mereka. Oh ironi...