Արդյո՞ք concurrenthashmap դրված շարանը անվտանգ է:

Արդյո՞ք concurrenthashmap դրված շարանը անվտանգ է:
Արդյո՞ք concurrenthashmap դրված շարանը անվտանգ է:
Anonim

ConcurrentHashMap-ի հիմնական կետերը. ConcurrentHashMap դասը thread-safe է, այսինքն՝ մի քանի շղթաներ կարող են գործել մեկ օբյեկտի վրա՝ առանց որևէ բարդության: … ConcurrentHashMap-ում Օբյեկտը բաժանվում է մի շարք հատվածների՝ ըստ համաժամանակյա մակարդակի:

Ապահով՞ է թելը դնել:

MessageService օբյեկտն արդյունավետորեն անփոփոխ է, քանի որ դրա վիճակը չի կարող փոխվել կառուցումից հետո: Հետևաբար, անվտանգ է թելի համար: Ավելին, եթե MessageService-ն իրականում փոփոխական էր, բայց մի քանի շղթաները միայն կարդալու հասանելիություն ունեն, այն նույնպես անվտանգ է շղթաների համար:

Արդյո՞ք ConcurrentHashMap-ի չափը անվտանգ է շղթայի համար:

Class ConcurrentHashMap Հեշ աղյուսակ, որն աջակցում է առբերումների ամբողջական միաժամանակությանը և թարմացումների համար սպասվող բարձր համաժամանակությանը: … Այնուամենայնիվ, չնայած բոլոր գործողությունները թելերի համար անվտանգ են, որոնման գործողությունները չեն ենթադրում կողպում, և չկա որևէ աջակցություն ամբողջ աղյուսակը կողպելու համար այնպես, որ կանխի բոլոր մուտքերը:

Արդյո՞ք HashMap-ը ապահով է կապի համար:

HashMap-ը համաժամանակացված չէ: Այն անվտանգ չէ շղթաների համար և չի կարող տարածվել բազմաթիվ թեմաների միջև առանց համապատասխան համաժամացման կոդի, մինչդեռ Hashtable-ը համաժամանակացված է:

Ինչու է ConcurrentHashMap-ը ձախողվում է անվտանգ:

միաժամանակյա փաթեթները, ինչպիսիք են ConcurrentHashMap-ը, CopyOnWriteArrayList-ը և այլն, անվնաս են բնության մեջ: Վերևի կոդի հատվածում մենք օգտագործում ենք Fail-Safe Iterator: Հետևաբար, թեև Հավաքածուի ընթացքում նոր տարր է ավելացվելկրկնություն, այն բացառություն չի անում:

Խորհուրդ ենք տալիս: