• 请不要在回答技术问题时复制粘贴 AI 生成的内容
cadl
4.77D
V2EX  ›  程序员

各位公司中的后端项目要求代码必须线程安全吗?

  •  1
     
  •   cadl · Sep 20, 2018 · 4753 views
    This topic created in 2971 days ago, the information mentioned may be changed or developed.

    各位公司中的后端项目要求代码必须线程安全吗?

    如果需要引入一个线程不安全的第三方依赖,会如何统一处理呢?

    以及有人来 review 第三方依赖是否线程安全吗?

    (语言不限)

    13 replies  •  2018-09-20 14:21:04 +08:00
    xuanbg
    xuanbg
    Sep 20, 2018
    1
    异步的业务涉及到的代码必须线程安全,同步的建议但不做要求。
    如果必须要引入线程不安全的第三方依赖,那你理论上除了同步还是同步。
    AngelCriss
    AngelCriss
    Sep 20, 2018 via Android
    2
    这个是我自己的要求。。
    myzWILLmake
    myzWILLmake
    Sep 20, 2018❤️2
    3
    多线程交互业务要是不保证线程安全,这个你敢上线么...
    xxkd5851768
    xxkd5851768
    Sep 20, 2018
    4
    @AngelCriss 我们都一样。。。
    yulon
    yulon
    Sep 20, 2018
    5
    如果依赖内部有多线程,那就打死依赖的作者;如果依赖内部是单线程,那就自己做线程安全呗=。=
    yanaraika
    yanaraika
    Sep 20, 2018
    6
    actor model
    neoblackcap
    neoblackcap
    Sep 20, 2018❤️1
    7
    库没有说,默认线程不安全,自己 review 或者加锁
    yidinghe
    yidinghe
    PRO
    Sep 20, 2018
    8
    做不到线程安全的话难道不会出 BUG ?
    zwh2698
    zwh2698
    Sep 20, 2018❤️1
    9
    请在网上找一份华为安全编程规范,其中不但有要求,并且有解决方案
    cadl
    cadl
    OP
    Sep 20, 2018
    10
    @yidinghe 所以就有很多限制。比如代码里完全避免使用多线程,服务也是按类似 pre-fork 的方式来跑。
    cadl
    cadl
    OP
    Sep 20, 2018
    11
    @zwh2698 有点意思,去搜搜参考下,多谢
    janxin
    janxin
    Sep 20, 2018 via iPhone
    12
    出 bug 你都不一定好找位置…
    wizardforcel
    wizardforcel
    Sep 20, 2018
    13
    后端避不开多线程,你不手动创建,但是服务器会创建。除非是 node 这种明确了单线程异步的环境,但这种很少很少。

    我一直是默认所有对象是线程不安全的,除非文档里有特殊说明。该加锁就加锁也没啥。
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Privacy   ·   Solana   ·   1599 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 50ms · UTC 12:33 · PVG 20:33 · LAX 04:33 · JFK 07:33
    ♥ Do have faith in what you're doing.