chenshijun
2020-04-17 f18b1d4daeeb42ea026dfad2df506c08a9148796
将满队列判断修改成capMod而不是capMod-1
1个文件已修改
16 ■■■■ 已修改文件
shmqueue.go 16 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
shmqueue.go
@@ -189,8 +189,8 @@
    }
    //todo
    if posCnt >= capMod-1 {
    //if posCnt >= capMod {
    //if posCnt >= capMod-1 {
    if posCnt >= capMod {
        runtime.Gosched()
        return false, int(posCnt)
    }
@@ -204,8 +204,6 @@
    cache = &(eqi.EsCaches[putPosNew&capMod])
    //tryMax := 100
    //tryCount := 0
    for {
        getNo := atomic.LoadUint32(&cache.getNo)
        putNo := atomic.LoadUint32(&cache.putNo)
@@ -216,10 +214,6 @@
        } else {
            runtime.Gosched()
        }
        //tryCount++
        //if tryCount >= tryMax {
        //    return false, int(posCnt)
        //}
    }
}
@@ -301,8 +295,6 @@
    cache = &(eqi.EsCaches[getPosNew&capMod])
    //tryMax := 100
    //tryCount := 0
    for {
        getNo := atomic.LoadUint32(&cache.getNo)
        putNo := atomic.LoadUint32(&cache.putNo)
@@ -314,10 +306,6 @@
        } else {
            runtime.Gosched()
        }
        //tryCount++
        //if tryCount >= tryMax {
        //    return ElemInfo{}, false, int(posCnt)
        //}
    }
}