HarmonyOS 多线程并发相关问题

​现在我们有个需求,想请教下怎么处理,因为我们的接口的请求和响应数据都是加密的,现在我们的处理逻辑是请求之前判断是否需要调用握手接口,拿到加密的密钥,然后通过这个密钥对请求数据加密,对响应结果进行解密,秘钥有有效期限定,现在我同时启动多个接口,假如秘钥过期了,我现在有5个接口同时启动,那说明我需要同时调用5次握手接口,同时这5次返回的密钥可能都不相同,我怎么管理这5个密钥呢?

我现在的想法是弄一个 hashmap或者 list 集合管理这些秘钥,然后在拿到秘钥结果的时候往 hashmap 插入秘钥,里面存入请求的 url 密钥 密钥有效期 以及秘钥的响应时间,然后继续接口请求的时候首先通过请求的 url 或者其他 key 来查询这个密钥,然后对请求参数封装,下次拿到响应结果也是通过 url 或者其他 key 来集合里面查询这个密钥,然后通过密钥解析响应结果,下次重新调用接口的话去查询集合里面是否存在没过期的密钥,如果存在就通过密钥进行密钥进行加密请求以及解密响应。

但是我没找到类似于 ConcurrentHashMap 这种加锁的集合,怎么保障这个数据集的多线程安全性,不会被覆盖或者数据丢失的问题。​

HarmonyOS
3天前
浏览
收藏 0
回答 1
待解决
回答 1
按赞同
/
按时间
zxjiu
分享
微博
QQ
微信
回复
3天前
相关问题
HarmonyOS 多线程问题
310浏览 • 1回复 待解决
HarmonyOS关于多线程问题
292浏览 • 1回复 待解决
HarmonyOS 线程相关问题
295浏览 • 1回复 待解决
ArkTs多线程方案如何保证线程安全
2377浏览 • 1回复 待解决
如何使用taskpool实现多线程
958浏览 • 1回复 待解决
HarmonyOS ArkTS会不会支持多线程开发
2237浏览 • 2回复 待解决
如何实现多线程数据共享
2067浏览 • 1回复 待解决
应该如何设计大量线程并发方案
1896浏览 • 1回复 待解决
多线程中EGL如何共享Context
253浏览 • 1回复 待解决
什么是系统的多线程模型
265浏览 • 1回复 待解决
求大佬告知ArkTS是否支持多线程
1961浏览 • 1回复 待解决
配置管理类多线程方案
1713浏览 • 1回复 待解决
如何在进行并发操作时保证线程安全
206浏览 • 1回复 待解决