Pejabat

Cari dan atur Memory Leaks dalam Windows 10/8/7

FIX: Your Computer Is Low On Memory Windows 10/8/7

FIX: Your Computer Is Low On Memory Windows 10/8/7

Isi kandungan:

Anonim

A Memory Leak adalah salah guna sumber dalam program komputer kerana peruntukan memori yang rosak. Ia berlaku apabila lokasi RAM yang tidak digunakan masih belum dirilis. Kebocoran memori tidak boleh dikelirukan dengan kebocoran ruang, yang merujuk kepada program yang menggunakan lebih banyak RAM daripada yang diperlukan. Kebocoran memori pada sistem Windows 10/8/7 dikatakan telah berlaku apabila memori tidak dapat diakses walaupun tidak digunakan.

Kebocoran Memory dalam Windows 10

Sebelum anda mula, anda harus tahu bahawa Kebocoran memori adalah isu perisian untuk debug - contohnya dalam Java, JavaScript, C / C ++, Windows, dll. Fisik penggantian RAM atau hard disk tidak diperlukan.

Mengapa buruk

kebocoran adalah buruk kerana ia adalah pepijat, kecacatan dalam sistem. Tetapi mari kita ketahui betapa ia memberi kesan kepada sistem:

  1. Memandangkan memori tidak dibebaskan walaupun tidak digunakan, ia mengakibatkan kekurangan memori.
  2. Keluarkan hasil ingatan pada penuaan perisian
  3. Mengurangkan memori yang tersedia
  4. Untuk mengenalpasti kebocoran ingatan, seorang pengaturcara perlu mempunyai akses kepada kod sumber program ini.

Mencari kebocoran

Untuk menyelesaikan masalah, kita perlu mengenal pasti terlebih dahulu. Langkah-langkah asas untuk mencari kebocoran memori adalah:

Pengesahan

  1. : Menentukan sama ada kebocoran telah berlaku Mencari kebocoran memori mod Kernel
  2. : Mencari kebocoran yang disebabkan oleh komponen pemacu mod kernel. Mencari kebocoran memori mod pengguna
  3. : Mencari kebocoran yang disebabkan oleh pemacu mod atau aplikasi pengguna. Peruntukan memori

Terdapat mod yang berbeza di mana aplikasi memperuntukkan RAM. Jika ruang tidak dibebaskan selepas digunakan, kebocoran memori akan berlaku tanpa mengira cara peruntukan. Sesetengah corak peruntukan biasa ialah:

Fungsi HealAlloc untuk peruntukan memori timbunan. Kesamaan runtime C / C ++ adalah malloc dan baru.

  1. Fungsi VirtualAlloc untuk peruntukan langsung dari OS
  2. Kernel32 API untuk memegang memori kernel untuk aplikasi. Contoh, CreateFile, CreateThread.
  3. API User32 dan API Gdi32
  4. Mencegah kebocoran memori

Kita semua tahu pencegahan adalah lebih baik daripada mengubati jadi ada beberapa cara untuk mencegah kebocoran memori

tabiat pemantauan

Anda perlu memerhatikan penggunaan RAM yang tidak normal oleh program dan aplikasi individu. Anda boleh pergi ke Windows Task Manager dengan menekan

CTRL + SHIFT + ESC dan tambah lajur seperti Mengendalikan, Objek Pengguna, Objek GDI, dan lain-lain Ini akan membantu anda dengan mudah memantau penggunaan sumber

Alat Microsoft untuk mendiagnosis kebocoran memori

Pelbagai alat mendiagnosis kebocoran memori untuk pelbagai mod peruntukan:

Verifier Aplikasi mendiagnosis kebocoran timbunan.

  1. UMDH (komponen Alat Pengecutan Windows) mendiagnosis kebocoran untuk proses individu dengan mengawasi peruntukan memori timbunan
  2. Trace Capture untuk analisis menyeluruh penggunaan RAM
  3. Xperf juga menjejaki corak peruntukan timbunan.
  4. CRT Debug Heap bukan sahaja menjejaki peruntukan timbunan tetapi juga membolehkan amalan pengekodan untuk meminimumkan kebocoran.
  5. Tips Penggunaan
  6. Gunakan kernel

HANDLE

  1. s dan pointer pintar lain untuk sumber Win32 dan peruntukan timbunan. Dapatkan kelas untuk pengurusan sumber automatik untuk peruntukan kernel dari perpustakaan ATL. auto_ptr
  2. untuk peruntukan timbunan Encapsulate point interface antara "pointer pintar" dengan bantuan _com_ptr_t
  3. atau _variant_t Pantau kod.NET untuk kegunaan memori yang tidak normal. Elakkan laluan keluar banyak untuk fungsi untuk membolehkan peruntukan dibebaskan daripada pembolehubah dalam kebanyakan blok pada akhir fungsi. Gunakan pengecualian asal sahaja selepas membebaskan semua peruntukan di blok yang kedua. Balutkan semua tumpukan dan peruntukkan peruntukan ke dalam pointer pintar untuk menggunakan pengecualian C ++. Sentiasa memanggil fungsi PropVariantClear
  4. sebelum menghidupkan semula atau membuang objek PROPVARIANT
  5. Menyelesaikan masalah kebocoran memori di Windows
  6. Sama seperti pelbagai cara untuk mencegah kebocoran memori, terdapat pelbagai cara untuk menghentikan kebocoran memori.
  7. 1] Tutup proses dan mulakan semula. Jika anda melihat proses yang tidak perlu mengambil terlalu banyak RAM, anda boleh menamatkan proses dalam Pengurus Tugas. Anda perlu memulakan semula peranti supaya ruang dibebaskan tersedia untuk digunakan oleh proses lain. Tanpa Masalah bocor memori Restart tidak akan diselesaikan. Satu proses tertentu yang mempunyai pepijat untuk melambatkan PC adalah Broker Runtime. 2] Peralatan Diagnostik Memori

Untuk mengakses Alat Diagnostik Memori yang dibina untuk Windows:

Simpan semua kerja penting anda

Tekan

Win + R

untuk membuka tingkap

Run

  1. Taip arahan mdsched.exe dalam tetingkap Run .
  2. Mulakan semula PC. mulakan semula, lakukan imbasan asas atau pergi ke pilihan Advanced `seperti` Ujian campuran `atau`
  3. Kiraan pas
  4. `. F10 untuk memulakan ujian. Ini masih pembaikan sementara. 3] Periksa kemas kini Pemandu Pemandu yang lapuk menyebabkan kebocoran memori. Pastikan semua pemandu dikemas kini: Tekan
  5. Win + R dan buka tetingkap Run

. Ketik

devmgmt.msc

dan tekan Enter. Ia akan membawa anda ke

  1. Pengurus Peranti . Semak pemacu yang sudah lapuk dan kemas kini semuanya. Untuk kemas kini yang mungkin anda terlepas, periksa Kemas Kini Windows. Ini adalah mudah. 4] Mengoptimumkan prestasi Melaraskan Windows untuk prestasi akan menguruskan segala-galanya termasuk penjadualan pemproses dan penggunaan memori untuk menghentikan kebocoran memori. Ikuti langkah-langkah berikut: Klik kanan pada ` PC ini
  2. ` dan pilih `tetapan
  3. Advanced

` di anak tetingkap kiri

Di bawah `

> `

  1. `, kemudian tekan ` `, diikuti dengan ` Tetapan `. Periksa `
  2. Mula semula dan periksa jika masalah diselesaikan Jika penyelesaian mudah ini tidak berfungsi, cuba penyelesaian seterusnya. 5] Lumpuhkan Program yang berjalan pada Permulaan Melumpuhkan program yang menyusahkan adalah satu-satunya cara untuk menghilangkan isu kebocoran memori. Pergi ke Pengurus Tugas dan matikan program yang membahayakan. Jika anda tidak tahu program mana yang membuat masalah, lakukan ini: Pergi ke ` Pengurus Tugas
  3. `. Pergi ke ` Startup `.
  4. 6] Defrag Hard Drive

Walaupun Windows 10 melakukan ini untuk anda secara automatik, anda mungkin perlu melakukan defrag hard drive sesekali untuk mengoptimumkan prestasi:

Pergi ke `

PC ini

  1. ` atau ` Komputer saya `.
  2. Klik kanan cakera keras sistem (biasanya C: drive). > Alat `di bawah`
  3. Properties

`dan pilih`

Optimalkan

  1. `. Pilih pemacu untuk defrag dan pilih` > Mulakan semula komputer anda selepas pemecahan baru. 7] Fail ClearPage pada penutup Semakin kompleks sekarang - tetapi jangan risau. Berikut ialah cara untuk membersihkan Fail Page pada setiap shutdown:
  2. Ketik
  3. regedit pada Carian untuk melancarkan Editor Registry. Masukkan laluan ini: HKEY_LOCAL_MACHINESYSTEMCurrentControlSetControlSession ManagerMemory Management ClearPageFileAtShutDown ke `1`. Simpan perubahan dan Mulakan semula peranti.
  4. Ini sepatutnya melakukannya 9] Lumpuhkan Superfetch Perkhidmatan Windows ini mengoptimumkan prestasi dengan meminimumkan masa but. Ia membolehkan Windows menguruskan penggunaan RAM. Kehidupan selepas melumpuhkan Superfetch tidak mudah tetapi melakukannya jika anda mesti. Sekurang-kurangnya cuba ini sahaja untuk mengasingkan masalah:

Cari

services.msc

dan pergi ke Pengurus Servis.

  1. Cari ` Superfetch ` dan klik kanan untuk pergi untuk `
  2. Properties `.
  3. Pilih ` Stop
  4. `.

Juga `

Disable

` perkhidmatan dari menu drop-down

  1. Mulakan semula PC dan periksa apakah prestasi telah bertambah baik. Aktifkan Superfetch jika ini tidak berfungsi 10] Periksa malware
  2. Gunakan perisian antivirus pihak ketiga atau Windows Defender dalam Windows 10 untuk mengimbas dan menghapuskan perisian hasad. Pastikan antivirus dikemas kini untuk menyokong OS anda supaya ia tidak berakhir menjadi sebab kebocoran memori. Setiap penyelesaian yang anda perlukan untuk mencari atau mencegah kebocoran memori ada di sini. Anda boleh membaca lebih lanjut mengenai kebocoran memori pada MSDN dan Microsoft.