V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX 提问指南
lysS
V2EX  ›  问与答

弱弱问一下,并发加锁后是不是成单线程啦?

  •  
  •   lysS · 2020-10-07 22:05:27 +08:00 · 1596 次点击
    这是一个创建于 1519 天前的主题,其中的信息可能已经有所发展或是发生改变。
    6 条回复    2020-10-08 09:30:53 +08:00
    ochatokori
        1
    ochatokori  
       2020-10-07 22:21:25 +08:00 via Android
    排它锁的话那和单线程差不多
    共享锁的话那还是并发的呀
    lhx2008
        2
    lhx2008  
       2020-10-07 22:46:02 +08:00
    可以控制粒度的
    az467
        3
    az467  
       2020-10-07 22:50:53 +08:00
    可以看作局部串行(单线程)
    dtgxx
        4
    dtgxx  
       2020-10-07 23:18:20 +08:00
    不是单线程,可以想象一下如果有一大堆逻辑计算,最终是为了修改一个变量,这些逻辑计算可以并行,不加锁,锁只是那个变量不能被同时修改。那么大部分时间都浪费在逻辑计算上,那多线程的好处就是,大家并行的逻辑计算,省下了这部分时间,然后用很短的时间去修改变量。 如果是单线程,那么一直串行逻辑计算,时间就是线性的了。
    lysS
        5
    lysS  
    OP
       2020-10-08 09:30:05 +08:00
    @ochatokori #1 对,就是互斥锁
    lysS
        6
    lysS  
    OP
       2020-10-08 09:30:53 +08:00
    @dtgxx #4 谢老哥
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   5902 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 33ms · UTC 02:28 · PVG 10:28 · LAX 18:28 · JFK 21:28
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.