开发者社区> 问答> 正文

为保证Java高效,针对线程如何处理?

已解决

为保证Java高效,针对线程如何处理?

展开
收起
游客lmkkns5ck6auu 2022-10-26 19:08:26 382 0
1 条回答
写回答
取消 提交回答
  • 推荐回答
    1. 在单线程中,尽量使用非线程安全类 使用非线程安全类,避免了不必要的同步开销。

    2. 在多线程中,尽量使用线程安全类 使用线程安全类,比自己实现的同步代码更简洁更高效。 反例: 正例:

    3. 尽量减少同步代码块范围 在一个方法中,可能只有一小部分的逻辑是需要同步控制的,如果同步控制了整个 方法会影响执行效率。所以,尽量减少同步代码块的范围,只对需要进行同步的代 码进行同步。
    4. 尽量合并为同一同步代码块 同步代码块是有性能开销的,如果确定可以合并为同一同步代码块,就应该尽量合 并为同一同步代码块。

    5. 尽量使用线程池减少线程开销 多线程中两个必要的开销:线程的创建和上下文切换。采用线程池,可以尽量地避 免这些开销。

    以上内容摘自《Java工程师必读手册》电子书,点击https://developer.aliyun.com/ebook/download/7780 可下载完整版

    2022-10-26 20:46:31
    赞同 展开评论 打赏
来源圈子
更多
收录在圈子:
阿里云开发者社区官方技术圈,用户产品功能发布、用户反馈收集等。
问答排行榜
最热
最新

相关电子书

更多
Spring Cloud Alibaba - 重新定义 Java Cloud-Native 立即下载
The Reactive Cloud Native Arch 立即下载
多IO线程优化版 立即下载