რატომ ხდება ერთდროული მოდიფიკაციის გამონაკლისი ჯავაში?

Სარჩევი:

რატომ ხდება ერთდროული მოდიფიკაციის გამონაკლისი ჯავაში?
რატომ ხდება ერთდროული მოდიფიკაციის გამონაკლისი ჯავაში?
Anonim

ერთდროული მოდიფიკაციის გამონაკლისი ჩნდება, როდესაც ობიექტის ერთდროულად შეცვლას ცდილობენ, როცა ის დაუშვებელია. ეს გამონაკლისი ჩვეულებრივ ხდება, როდესაც ადამიანი მუშაობს Java Collection კლასებთან. მაგალითად - ძაფისთვის დაუშვებელია კოლექციის შეცვლა, როდესაც მასზე სხვა ძაფები იმეორებს.

როგორ გამოვასწორო ერთდროული მოდიფიკაციის გამონაკლისი?

ჩვენ ასევე შეგვიძლია თავიდან ავიცილოთ ერთდროული მოდიფიკაციის გამონაკლისი ერთ ხრახნიან გარემოში. ჩვენ შეგვიძლია გამოვიყენოთ Iterator-ის წაშლის მეთოდი ობიექტის ძირითადი კოლექციის ობიექტიდან ამოსაღებად. მაგრამ ამ შემთხვევაში, თქვენ შეგიძლიათ ამოიღოთ მხოლოდ ერთი და იგივე ობიექტი და არა სხვა ობიექტი სიიდან.

როგორ თავიდან აიცილოთ ერთდროული მოდიფიკაციის გამონაკლისი რუკაზე?

გამოიყენეთ ConcurrentHashMap. გააგრძელეთ მარტივი HashMap-ის გამოყენება, მაგრამ შექმენით ახალი რუკა თითოეულ მოდიფიკაციაზე და შეცვალეთ რუკები კულისებში (გადართვის მოქმედების სინქრონიზაცია ან AtomicReference)

იტერატორის რომელი მეთოდი უშვებს ერთდროული მოდიფიკაციის გამონაკლისს?

თუ ჩვენ გამოვიყენებთ მეთოდების თანმიმდევრობას ობიექტზე, რომელიც არღვევს მის კონტრაქტს, მაშინ ობიექტი აგდებს ConcurrentModificationException-ს. მაგალითად: თუ კრებულზე გამეორებისას ჩვენ პირდაპირ ვცდილობთ ამ კრებულის შეცვლას, მაშინ მოცემული ჩავარდნის სწრაფი გამეორება ჩააგდებს ამ ConcurrentModificationException.

რა არის ერთდროული მოდიფიკაციის გამონაკლისი Java stack overflow-ში?

თუ ერთი თემა გამოსცემს მეთოდის გამოძახებების თანმიმდევრობას, რომელიც არღვევს ობიექტის კონტრაქტს, ობიექტმა შეიძლება გამოავლინოს ეს გამონაკლისი. მაგალითად, თუ თემა ცვლის კრებულს უშუალოდ მაშინ, როცა ის კრებულზე იტერაციებს მარცხის სწრაფი გამეორებით, იტერატორი ჩააგდებს ამ გამონაკლისს.

გირჩევთ:

საინტერესო სტატიები
ჯობია ყავარჯენი ჯოხს?
Წაიკითხე მეტი

ჯობია ყავარჯენი ჯოხს?

თუ თქვენ გაქვთ სუსტი, მტკივნეული ან დაზიანებული ფეხი, შეიძლება დაგჭირდეთ ფეხით ჯოხი ან ყავარჯენი, რათა დაგეხმაროთ წონაში. იდაყვის ყავარჯენი უფრო მეტ საყრდენს გვთავაზობს, ვიდრე ფეხით ჯოხი, მაგრამ შეიძლება უფრო რთული იყოს, რადგან ფეხზე დგომისას მკლავი უნდა გადახვიოთ.

რომელ საათზე წყვეტენ ჭიკჭიკები?
Წაიკითხე მეტი

რომელ საათზე წყვეტენ ჭიკჭიკები?

ჭიკჭიკი იწყება ივლისის ბოლოს-ში, როცა ჭიკჭიკები საკმარისად მოხუცები არიან დასაწყვილებლად. ჭიკჭიკები იბადებიან გაზაფხულზე, მწიფდებიან ზაფხულის ბოლოს და კვდებიან შემოდგომაზე. და სწორედ ამ დროს მთავრდება მწერების ზაფხულის კონცერტები. ჭიკჭიკებს ჭიკჭიკებს მთელი ღამე?

ვინ არის კაროლა ჯაინი?
Წაიკითხე მეტი

ვინ არის კაროლა ჯაინი?

კაროლა ჯაინი არის ჯაინის ოჯახის ინსტიტუტის რწმუნებული. ის არის ბიზნესისა და მარკეტინგის აღმასრულებელი, ცხოვრების სტილის და B2B ბრენდების შექმნის 20+ წლიანი გამოცდილებით. Spartan-ში მისი ამჟამინდელი საბჭოს თანამდებობამდე, კაროლა იყო გლობალური CMO, რომელიც აკონტროლებდა Spartan-ის მარკეტინგისა და ბრენდის სტრატეგიის ყველა ასპექტს.