Niyə Java-da paralel modifikasiya istisnası baş verir?

Mündəricat:

Niyə Java-da paralel modifikasiya istisnası baş verir?
Niyə Java-da paralel modifikasiya istisnası baş verir?
Anonim

ConcurrentModificationİstisnası icazə verilməyəndəobyekt eyni vaxtda dəyişdirilməyə çalışıldıqda baş verir. Bu istisna adətən Java Collection dərsləri ilə işləyərkən baş verir. Misal üçün - Kolleksiya üzərində başqa mövzu təkrarlanan zaman mövzunun Kolleksiyaya dəyişiklik etməsi icazəli deyil.

Mən paralel modifikasiya istisnasını necə düzəldə bilərəm?

Biz həmçinin tək yivli mühitdə Paralel Modifikasiya İstisnasından qaça bilərik. Obyekti əsas kolleksiya obyektindən silmək üçün İteratorun silmə metodundan istifadə edə bilərik. Lakin bu halda, siz siyahıdan başqa obyekti yox, yalnız eyni obyekti silə bilərsiniz.

Xəritədə paralel modifikasiya istisnasının qarşısını necə ala bilərsiniz?

istifadə ConcurrentHashMap. sadə HashMap-dən istifadə etməyə davam edin, lakin hər modifikasiyada yeni xəritə yaradın və pərdə arxasında xəritələri dəyişdirin (keçid əməliyyatını sinxronlaşdırın və ya AtomicReference istifadə edin)

Hansı iterator metodu paralel modifikasiya istisnasını atır?

Əgər biz onun müqaviləsini pozan obyektdə metodlar ardıcıllığına müraciət etsək, o zaman obyekt ConcurrentModificationException atır. Məsələn: kolleksiya üzərində iterasiya zamanı biz birbaşa həmin kolleksiyanı dəyişməyə çalışırıqsa, o zaman verilmiş fail-fast iterator bu ConcurrentModificationException-u atacaq.

Java yığınının daşmasında paralel modifikasiya istisnası nədir?

Əgər tək başlıq obyektin müqaviləsini pozan metod çağırışlarının ardıcıllığını verirsə, obyekt bu istisnanı ata bilər. Məsələn, əgər başlıq kolleksiyanı uğursuz sürətli iterator ilə təkrarlayarkən kolleksiyanı birbaşa dəyişdirirsə, iterator bu istisnanı atacaq.

Tövsiyə:

Maraqlı məqalələr
Aprezolin ürək dərəcəsini aşağı sala bilərmi?
Daha çox oxu

Aprezolin ürək dərəcəsini aşağı sala bilərmi?

Hydralazine (Apresoline) simptomatik sinus bradikardiyası (SSB) olan 21 xəstədə (14 hipertansif və 7 normotenziv) ürək dərəcəsini artırmaq üçün istifadə edilmişdir. Xəstələr dərmanın fərdi artan dozalarından əvvəl və sonra klinik və 24 saatlıq EKQ analizi ilə qiymətləndirilib.

Demirsayd həqiqətən əlil arabasında idi?
Daha çox oxu

Demirsayd həqiqətən əlil arabasında idi?

"Perri Meyson"dan əvvəl məşğul kino karyerası olan Burr, 1967-ci ildən 1975-ci ilə qədər NBC-də yayımlanan "Ironside" serialında əlil arabasına məhkum edilmiş qəzəbli San-Fransisko detektivi kimi də rol aldı. … -ə doğru ömrünün sonunda xəstəliyi onu real həyatda əlil arabasından istifadə etməyə məcbur etdi.

Axı göstəricilər variasiyaya təsir edirmi?
Daha çox oxu

Axı göstəricilər variasiyaya təsir edirmi?

Nə standart kənaraçıxma, nə də dispersiya kənar göstəricilərə davamlıdır. Məlumatın gövdəsindən ayrı olan məlumat dəyəri statistikanın dəyərini ixtiyari olaraq böyük məbləğdə artıra bilər. Orta mütləq kənarlaşma (MAD) həm də kənar göstəricilərə həssasdır.