Përjashtimi i Modifikimit të Njëkohshëm ndodh kur një objekt tentohet të modifikohet njëkohësisht kur nuk lejohet. Ky përjashtim zakonisht vjen kur dikush është duke punuar me klasa Java Collection. Për shembull - Nuk lejohet që një fill të modifikojë një Koleksion kur një fill tjetër po përsëritet mbi të.
Si mund ta rregulloj përjashtimin e modifikimit të njëkohshëm?
Ne gjithashtu mund të shmangim përjashtimin e modifikimit të njëkohshëm në një mjedis të vetëm filetuar. Ne mund të përdorim metodën e heqjes së Iterator për të hequr objektin nga objekti themelor i koleksionit. Por në këtë rast, ju mund të hiqni vetëm të njëjtin objekt dhe jo ndonjë objekt tjetër nga lista.
Si e parandaloni përjashtimin e modifikimit të njëkohshëm në një hartë?
përdor ConcurrentHashMap. vazhdoni të përdorni HashMap të thjeshtë, por ndërtoni një hartë të re në çdo modifikim dhe ndërroni hartat në prapaskenë (duke sinkronizuar funksionimin e ndërprerës ose duke përdorur AtomicReference)
Cila metodë e përsëritësit hedh përjashtime të modifikimit të njëkohshëm?
Nëse thërrasim një sekuencë metodash në një objekt që shkel kontratën e tij, atëherë objekti hedh ConcurrentModificationException. Për shembull: nëse gjatë përsëritjes mbi koleksionin, ne përpiqemi drejtpërdrejt ta modifikojmë atë koleksion, atëherë përsëritësi i dhënë fail-fast do të hedhë këtë Përjashtim të Modifikimit të Njëkohshëm.
Cili është përjashtimi i modifikimit të njëkohshëm në tejmbushjen e pirgut të Java?
Nëse një fill i vetëm lëshon një sekuencë thirrjesh të metodës që shkel kontratën e një objekti, objekti mund ta hedhë këtë përjashtim. Për shembull, nëse një thread modifikon një koleksion drejtpërdrejt ndërsa ai përsëritet mbi koleksion me një përsëritës të shpejtë të dështimit, përsëritësi do të hedhë këtë përjashtim.