zoukankan      html  css  js  c++  java
  • 一次多线程并发事故

    说明:

    1)

    读写的数据结构包含:持仓、盈亏 2部分

    虽然浮动盈亏这块没有更新持仓,仅更新了盈亏,但写入时又把读出来的原持仓写回去了

    成交读取pb持仓

                               浮动盈亏读取pb盈亏

    处理持仓

                                   处理盈亏

    写入pb持仓

                                   写入pb盈亏

    所以,读取和写入的内容粒度应细,这也关系到排他锁的粒度
    这里如果将持仓与盈亏分开存储,即使无锁,也不存在并发事故

    2)不应在单线程的disruptor消费者中做任何阻塞

    https://www.cnblogs.com/silyvin/p/10076003.html

    3)只锁了user级别,但却在被锁代码块中操作team的内容,如果同一个team的两个user同时触发,会有并发问题

  • 相关阅读:
    跨域问题注解解决
    跳出循环到指定位置
    idea model管理
    maven 取本地jar
    注解 元注解
    手动打jar包到maven
    sonar搭建
    jmockit、junit
    注解
    虚拟机指令
  • 原文地址:https://www.cnblogs.com/silyvin/p/10244327.html
Copyright © 2011-2022 走看看