最新要闻
- 平安平安福终身寿险退保能拿回多少?怎么退?
- 劳模先进志愿服务忙
- 2023天津光合谷熊猫生日会怎么去?(附交通指南)
- 转账前她给民警打了个电话,8.6万元保住了!
- 又被惊艳到!破晓时分在沙坪坝追一场浪漫朝霞
- 为“辫子车”做检查,短短十分钟脖子晒得通红
- 青岛夏日赶海指南(地点+种类)
- 被打服了?拉塞尔称赞约基奇是目前联盟最佳:遥遥领先其他球员
- 联合救治技术阻断“衰竭风暴” “人工肝”助患者肝脏“休假”
- 人与人繁殖行为的区别_人与人繁殖行为
- 常温超导即使不是科技骗局,也是一个套
- 《权力的游戏》剧本揭铁王座被毁真相,网友:浪费了8年时间
- 聚美万嘉整装,黑白空间删繁就简
- 国家网信办:处理超100万人个人信息者,应每年至少开展一次信息保护合规审计
- 必易微:8月3日融资买入124.66万元,融资融券余额4446.99万元
- “妙鸭”出圈,躺赢的却是万兴科技?
手机

诗歌是一种庄严的命名——《快递中国》简论

西藏自然科学博物馆开展“科普小讲解员”培训活动
- 诗歌是一种庄严的命名——《快递中国》简论
- 西藏自然科学博物馆开展“科普小讲解员”培训活动
- 艺术 | 中式美学的新表达
- 冯唐有本事在线阅读(冯唐)
- 河北廊坊、邢台有序转移蓄滞洪区群众 确保“吃好住好 人心稳定”
- 继孕期出轨后,巴西女星再曝内马尔丑闻,比婚内出轨更恶劣
家电
多线程开发带来的问题与解决方法
使用多线程主要会带来以下几个问题:
(一)线程安全问题线程安全问题指的是在某一线程从开始访问到结束访问某一数据期间,该数据被其他的线程所修改,那么对于当前线程而言,该线程就发生了线程安全问题,表现形式为数据的缺失,数据不一致等。
(资料图片仅供参考)
线程安全问题发生的条件:
1)多线程环境下,即存在包括自己在内存在有多个线程。
2)多线程环境下存在共享资源,且多线程操作该共享资源。
3)多个线程必须对该共享资源有非原子性操作。
线程安全问题的解决思路:
1)尽量不使用共享变量,将不必要的共享变量变成局部变量来使用。
2)使用synchronized关键字同步代码块,或者使用jdk包中提供的Lock为操作进行加锁。
3)使用ThreadLocal为每一个线程建立一个变量的副本,各个线程间独立操作,互不影响。
(二)性能问题线程的生命周期开销是非常大的,一个线程的创建到销毁都会占用大量的内存。同时如果不合理的创建了多个线程,cup的处理器数量小于了线程数量,那么将会有很多的线程被闲置,闲置的线程将会占用大量的内存,为垃圾回收带来很大压力,同时cup在分配线程时还会消耗其性能。
解决思路:
利用线程池,模拟一个池,预先创建有限合理个数的线程放入池中,当需要执行任务时从池中取出空闲的先去执行任务,执行完成后将线程归还到池中,这样就减少了线程的频繁创建和销毁,节省内存开销和减小了垃圾回收的压力。同时因为任务到来时本身线程已经存在,减少了创建线程时间,提高了执行效率,而且合理的创建线程池数量还会使各个线程都处于忙碌状态,提高任务执行效率,线程池还提供了拒绝策略,当任务数量到达某一临界区时,线程池将拒绝任务的进入,保持现有任务的顺利执行,减少池的压力。
(三)活跃性问题1)死锁,假如线程 A 持有资源 2,线程 B 持有资源 1,他们同时都想申请对方的资源,所以这两个线程就会互相等待而进入死锁状态。多个线程环形占用资源也是一样的会产生死锁问题。
解决方法:
避免一个线程同时获取多个锁避免一个线程在锁内同时占用多个资源,尽量保证每个锁只占用一个资源。尝试使用定时锁,使用 lock.tryLock(timeout)来代替使用内部锁机制。想要避免死锁,可以使用无锁函数(cas)或者使用重入锁(ReentrantLock),通过重入锁使线程中断或限时等待可以有效的规避死锁问题。
2)饥饿,饥饿指的是某一线程或多个线程因为某些原因一直获取不到资源,导致程序一直无法执行。如某一线程优先级太低导致一直分配不到资源,或者是某一线程一直占着某种资源不放,导致该线程无法执行等。
解决方法:
与死锁相比,饥饿现象还是有可能在一段时间之后恢复执行的。可以设置合适的线程优先级来尽量避免饥饿的产生。
3)活锁,活锁体现了一种谦让的美德,每个线程都想把资源让给对方,但是由于机器“智商”不够,可能会产生一直将资源让来让去,导致资源在两个线程间跳动而无法使某一线程真正的到资源并执行,这就是活锁的问题。
(四)阻塞阻塞是用来形容多线程的问题,几个线程之间共享临界区资源,那么当一个线程占用了临界区资源后,所有需要使用该资源的线程都需要进入该临界区等待,等待会导致线程挂起,一直不能工作,这种情况就是阻塞,如果某一线程一直都不释放资源,将会导致其他所有等待在这个临界区的线程都不能工作。当我们使用synchronized或重入锁时,我们得到的就是阻塞线程,如论是synchronized或者重入锁,都会在试图执行代码前,得到临界区的锁,如果得不到锁,线程将会被挂起等待,知道其他线程执行完成并释放锁且拿到锁为止。
解决方法:
可以通过减少锁持有时间,读写锁分离,减小锁的粒度,锁分离,锁粗化等方式来优化锁的性能。
临界区:
临界区是用来表示一种公共的资源(共享数据),它可以被多个线程使用,但是在每次只能有一个线程能够使用它,当临界区资源正在被一个线程使用时,其他的线程就只能等待当前线程执行完之后才能使用该临界区资源。
比如办公室办公室里有一支笔,它一次只能被一个人使用,假如它正在被甲使用时,其他想要使用这支笔的人只能等甲使用完这支笔之后才能允许另一个人去使用。这就是临界区的概念。
关键词:
-
-
-
-
多线程开发带来的问题与解决方法
健康中国 | 青春期性教育 不能“难以启齿”“羞羞答答”
霉霉给演唱会员工发5500万美元奖金 折合人民币为3.9亿元
求不为谁而作的歌歌词完整版(求不为谁而作的歌歌词)
天合光能青海基地年产5GW N型电池下线
Sugar Apple Fairy Tale 第十七集 没有纹章的城 预告
平安平安福终身寿险退保能拿回多少?怎么退?
Intel悄然发布Arc A570M/A530M笔记本显卡:功耗低至65W
诗歌是一种庄严的命名——《快递中国》简论
西藏自然科学博物馆开展“科普小讲解员”培训活动
零碳领未来!世界氢能与燃料电池产业博览会即将盛大开幕
艺术 | 中式美学的新表达
性能巅峰!一加Ace 2 Pro来了:搭载最强手机芯片骁龙8 Gen2
许攸之死:与曹操开玩笑,结果曹操恼了
新财观 | 利率重置或引发新一轮债券牛市
2358,动车d2358经过什么站
演出“只闻声不见人” 中消协点名“柱子票”“墙根票”
2023“活力赤峰”创业创意大赛正式启动
上汽大众ID.3销量破千 上汽新能源汽车7月销售9.1万辆
鸡肋食之无味弃之可惜图片(鸡肋食之无味弃之可惜)
冯唐有本事在线阅读(冯唐)
华纬科技:公司从事钢制弹簧的研发、生产与销售,将持续关注空气弹簧的发展趋势
方邦股份: 目前市场上可剥铜售价范围约在10至15美元/平方米
美丽生态:公司主营业务以建筑行业市政工程、公路工程为主
广东惠州:高层次人才住房公积金最高可贷100万元
《蛋仔派对》联合多部门反诈科普 织密未成年“保护网”
国家药监局通报:九江高科等企业生产的贴敷类医疗器械不合规
1000万以内最好SUV!赛力斯集团宣布推出全景智慧旗舰SUV AITO问界M9
劳模先进志愿服务忙
天津车展上市 五菱NanoEV限定版官图
Apple Watch Series 9有望增加粉色版 设计与上一代相同
高质量完成普查区划分和绘图工作
快快评丨民间救援者为人间大爱集结
石家庄公交31路开通
河北廊坊、邢台有序转移蓄滞洪区群众 确保“吃好住好 人心稳定”
Altair Engineering(ALTR.US):2023年Q2财报实现营收1.412亿美元
2023年08月03日19时57分新加坡元/人民币汇率最新报价
MP Materials(MP.US):2023年Q2财报实现营收6402.4万美元
开源证券:住建部定调一线城市表态,核心城市宽松政策可期
如果不会出现意外 人类可以存活多久(人类文明)
信和置业(00083.HK):8月3日南向资金减持2000股
章鱼是什么动物
胡萝卜玉米排骨汤的做法是什么
传涿州一中学数百人被困 校方回应 基本情况讲解
2023中国上市公司品牌价值行业榜出炉,装备行业增长迅猛 丨 品牌读榜·行业篇①
发生“闪腰”怎么办
什么是无侧限抗压强度试验(无侧限抗压强度试验)
北部湾港:7月货物吞吐量同比增长14.05%
上海地铁18号线建设最新进展(2023年7月31日)
花园生物:奥美拉唑碳酸氢钠胶囊取得药品注册证书
2023天津光合谷熊猫生日会怎么去?(附交通指南)
“路通到哪,我们修到哪!”湖北派出“通信尖兵”驰援京冀两地
郑州经开区幼升小政策2023
继孕期出轨后,巴西女星再曝内马尔丑闻,比婚内出轨更恶劣
钱天一混双打入半决赛,将对战出泽杏佳,杜凯琹横扫日乒组合
双色球23089期钊痴旋推荐
上汽荣威销售运营管理总监齐亮压力不小 今年能否遏止销量下滑?
8月3日日本央行最新货币政策追踪
上半年海南自贸港重点园区营收规模突破万亿元
反塔防RPG《加把劲魔女》8月17日于Steam平台发售
微信「小绿书」要来了?类似小红书,张小龙曾强调「短内容」重要性
鞠婧祎穿红钻开叉黑裙 性感妩媚氛围感拉满
小鹏智驾一号位换帅,接棒者李力耘其人
江西三月份适合种什么花,江西的三月份还冷吗
今日电池级碳酸锂跌3500元/吨,均价报26.9万元/吨
北海造船为达飞海运建造首艘5500TEU集装箱船出坞
预防“缠腰蛇”,又添新选择(附黄浦区带状疱疹疫苗社区接种门诊信息)
优步首次盈利!第二财季利润3.94亿美元,营收增14%不及预期
安全抵达!K396第二批近500名旅客到达北京丰台站
第五届中国草原酸奶大会在内蒙古乌兰察布市开幕
仙剑奇侠传6主角闲卿人物设定图 仙剑6闲卿明秀
里昂:维持理文造纸买入评级 目标价降至3.5港元
转账前她给民警打了个电话,8.6万元保住了!
中天新材终止挂牌获全国转股公司受理
苹果三季度营收高于预期 但iPhone收入不及预期
日照攻略,带孩子来日照当一日海边人
组图 | 夏日限定浪漫上线 南山植物园里荷开正盛
又被惊艳到!破晓时分在沙坪坝追一场浪漫朝霞
湘潭县河口镇:立功喜报送上门 拥军优属暖人心
哈尔滨森林消防:争分夺秒抗洪抢险
百色增速全区第二!广西14设区市上半年GDP数据出炉!
感恩有你·海南邀请近50名援琼医护人员开启畅游三亚之旅
黄鹤楼白天门票可以玩到几点?
赵庙镇:义诊进乡村 打通服务群众“最后一公里”
心系受灾学生 四川多所高校启动救助通道 新生也可申领
为“辫子车”做检查,短短十分钟脖子晒得通红
汕头新生儿随母医保待遇申请指南
“四时”有序纠纷有解|诉源治理
2023刚来杭州可以办理居住证吗
武汉最快地铁19号线全线轨道铺通
车载通信迅速发展!预计2028年汽车互联模块市场规模将超60亿美元【附车联网行业前景预测】
外丙在位时间多少年?具体时间有记载吗?
好理赔长啥样?它具有这4个特点
青岛夏日赶海指南(地点+种类)
阿尔茨海默病板块8月3日涨1.72%,双成药业领涨,主力资金净流入6745.59万元
国际大体联夏季大运会主任赵晶:本届大运会向世界展示了成都的深厚底蕴
雷暴、大风、暴雨!西安重要天气报告
这位市公安局原局长涉嫌贪污、受贿,被逮捕!
新密一女孩遭“电诈”,借姑姑手机两小时转走近19万元
南昌市教育考试院官网入口(南昌市教育考试院)