专注于 JetBrains IDEA 全家桶,永久激活,教程
持续更新 PyCharm,IDEA,WebStorm,PhpStorm,DataGrip,RubyMine,CLion,AppCode 永久激活教程

简单聊聊多线程的同步

0-前言

  最近发现有新手滥用同步,来简单聊聊Java多线程的同步问题;

1-什么是同步

  同步,简单点说就是一个代码块中多个操作在同一时间段内只能有一个线程进行,其他线程需要等待此线程完成后才可以继续执行;

2-什么时候才需要同步

  当多个线程访问同一资源时(或者有需要多个线程共享的变量时),这个时候,资源被多个线程共用,会由于程序延迟等原因有可能导致数据错误操作,比如扣减库存,有可能会出现负库存;这种情况下,就需要进行同步;

  加了同步,多线程实际就变成单线程了,跟单线程没有区别,也失去了多线程的意义,性能也急剧下降;

  所以,同步是通过牺牲性能来保证共享数据的安全性

  同步的目的,仅仅是为了保证数据的一致性和安全性,没有任何其他目的和意义;

3-简单总结:

    1、当多个线程访问同一资源时(或者有需要多个线程共享的变量时),为了保证数据安全,可以考虑加同步,其他时候不要加同步;

    2、过多同步可能会造成死锁,加同步时要考虑避免死锁;

  

文章永久链接:https://tech.souyunku.com/31899

未经允许不得转载:搜云库技术团队 » 简单聊聊多线程的同步

JetBrains 全家桶,激活、破解、教程

提供 JetBrains 全家桶激活码、注册码、破解补丁下载及详细激活教程,支持 IntelliJ IDEA、PyCharm、WebStorm 等工具的永久激活。无论是破解教程,还是最新激活码,均可免费获得,帮助开发者解决常见激活问题,确保轻松破解并快速使用 JetBrains 软件。获取免费的破解补丁和激活码,快速解决激活难题,全面覆盖 2024/2025 版本!

联系我们联系我们