社区
J2ME
帖子详情
java 多线程并发问题
a8509190
2020-03-07 10:44:02
逻辑简单,就遍历一个List<String> 然后每个id 都去创建一个线程,去微信调接口 拿一些数据,然后做些处理逻辑,得到一些实体类的List
外面定义了 List 把每个线程里面得到的list addAll进去,
不管是否 addAll 每个线程的处理时间都会慢慢的变慢,感觉不知道哪里有阻塞,是线程池 完了的线程没有销毁还是阻塞了。
有没有大神指点下,或者怎么能调试。
...全文
11379
4
打赏
收藏
java 多线程并发问题
逻辑简单,就遍历一个List 然后每个id 都去创建一个线程,去微信调接口 拿一些数据,然后做些处理逻辑,得到一些实体类的List 外面定义了 List 把每个线程里面得到的list addAll进去, 不管是否 addAll 每个线程的处理时间都会慢慢的变慢,感觉不知道哪里有阻塞,是线程池 完了的线程没有销毁还是阻塞了。 有没有大神指点下,或者怎么能调试。
复制链接
扫一扫
分享
举报
写回复
配置赞助广告
用AI写文章
4 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
武陵人摸鱼为业
2020-04-12
打赏
举报
回复
“每个线程的处理时间都会慢慢的变慢”的意思是什么没有理解,是以什么作为参考比较的?
dkwuxiang
2020-04-08
打赏
举报
回复
fanList 的实现是什么? 感觉如果一直add,是扩容带来的消耗吗?
密码测试
2020-04-08
打赏
举报
回复
多线程调用微信接口,因为是网络调用,网络是否有堵塞,可以监控一下微信接口调用花费的时间。 可以用jstack、jmap等jdk自带工具监控一下jvm状态。分析一下cpu、内存等的使用情况,根据情况进行调优处理。
karlpan01
2020-04-08
打赏
举报
回复
关于线程销毁或者内存增长,参照1楼的做法,用监控和实际来查看; 或者通读代码推断运行情况。
Java
多线程
并发
安全
问题
当多个线程
并发
操作同一临界资源,由于线程切换时机不确定,导致操作临界资源的顺序出现混乱严重时可能导致系统瘫痪.临界资源:操作该资源的全过程同时只能被单个线程完成.
Java
并发
编程:理解
多线程
并发
问题
及其解决方法
java
并发
编程
多线程
解决方法 示例 锁
并发
编程性能优化
Java
多线程
并发
常见
问题
与解决方案
因此,它只适合读远大于写的场景,且迭代器是“快照”式的——迭代期间对列表的修改不会反映在迭代器中。保证了同一时刻只有一个线程访问同步块,但过度使用会导致线程争用、性能瓶颈,甚至死锁。通过合理设计锁的使用、选择合适的
并发
集合与工具类,并结合
Java
并发
包的原子类和线程池配置策略,可有效避免常见
并发
陷阱,提高程序的健壮性。
多线程
环境下,对共享变量的修改可能被缓存在各自CPU缓存中,其他线程无法立即看到更新,导致。例如:线程T1持有资源A等待资源B,线程T2持有B等待A,就产生了死锁。操作实现无锁线程安全。
Java
并发
编程:
并发
问题
和
多线程
技术的应用和优化
只有深入理解
并发
编程的原理和技术,才能更好地应对多核心处理器和并行计算的挑战,开发出高效、稳定的
Java
应用程序。随着处理器核心数量的增加和计算机系统的并行性的不断提高,充分利用多核心处理器的能力已成为现代软件开发的关键要素之一。
Java
中的线程池技术,通过合理配置线程池的大小和工作队列的容量,可以有效地管理线程资源,提高系统的性能和吞吐量。通过使用原子操作和无锁算法实现
并发
计数器,我们可以避免竞态条件,确保计数操作的正确性和线程安全性,同时提高程序的
并发
性能。首先,将待下载的文件分割成多个固定大小的块。
多线程
java
_详解
Java
多线程
并发
问题
作者: 蓝师傅原文:https://juejin.im/post/5d7da37d6fb9a06b0202f156
多线程
并发
问题
,基本是面试必问的。大部分同学应该都知道Synchronized,Lock,部分同学能说到volatile、
并发
包,优秀的同学则能在前面的基础上,说出Synchronized、volatile的原理,以及
并发
包中常用的数据结构,例如ConcurrentHash...
J2ME
13,096
社区成员
26,491
社区内容
发帖
与我相关
我的任务
J2ME
Java J2ME
复制链接
扫一扫
分享
社区描述
Java J2ME
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章