Mündəricat:

Java Lang OutOfMemoryError GC yuxarı həddi nə qədər keçib?
Java Lang OutOfMemoryError GC yuxarı həddi nə qədər keçib?

Video: Java Lang OutOfMemoryError GC yuxarı həddi nə qədər keçib?

Video: Java Lang OutOfMemoryError GC yuxarı həddi nə qədər keçib?
Video: RTX 3090 Ti vs RTX 3060 Ultimate Showdown for Stable Diffusion, ML, AI & Video Rendering Performance 2024, Bilər
Anonim

dil . OutOf Memory Error : GC qaimə limiti keçildi xəta tərəfindən atılan xətadır Java tətbiqin zibil toplanmasına daha çox vaxt sərf etdiyini göstərmək üçün virtual maşın ( GC ) faydalı işdən daha çox. Tətbiq vaxtın 98%-ni zibil yığımına sərf etdikdə bu xəta JVM tərəfindən atılır.

Nəticə etibarı ilə, Java Lang OutOfMemoryError GC yuxarı həddi keçdiyini necə düzəltmək olar?

Java düzəltmək üçün təkliflər. dil. OutOfMemoryError: GC qaimə limiti keçdi

  1. Maksimum yığın ölçüsünü tətbiqiniz üçün uyğun olan nömrəyə qədər artırın, məsələn. -Xmx=4G.
  2. Əgər siz artıq istifadə etmirsinizsə, Java tətbiqinizdə -XX:+UseConcMarkSweepGC Zibil toplayıcıdan istifadə etməyə çalışın.

Bir də soruşa bilərsiniz ki, Java-da yaddaşın pozulmasının səbəbi nədir? dil. OutOfMemoryError istisnası . Adətən, bu səhv bir obyektin ayrılması üçün kifayət qədər yer olmadığı zaman atılır Java yığın. Bu halda, zibil kollektoru yeni obyektin yerləşdirilməsi üçün yer yarada bilməz və yığın daha da genişləndirilə bilməz.

Həm də bilmək lazımdır ki, Java-da yaddaş səhvini necə düzəldə bilərəm?

Yaddaş parametrlərini artırmaq qərarına gəlsəniz, bir neçə ümumi qaydalara əməl etməlisiniz

  1. OutOfMemory xətası ilə qarşılaşmayana qədər Xmx-i kiçik artımlarla (məsələn, bir dəfə 512mb) artırın.
  2. Səhviniz javadırsa.
  3. Səhviniz PermGen-ə istinad etmirsə, onu artırmağa ehtiyac yoxdur.

Yaddaş çatışmazlığı səhvlərinə nə səbəb olur?

An yaddaş çatışmazlığı xətası ilk növbədə məbləğinə istinad edir yaddaş xüsusi tapşırıqları yerinə yetirmək üçün mövcuddur. Beləliklə, bir ümumi səbəb bunlardan yaddaşdan kənar səhvlər eyni vaxtda çoxlu proqram işlədir.

Tövsiyə: