相关疑难解决方法(0)

Golang致命错误:并发映射读取和映射写入

我在Go中编写minecraft服务器,当服务器受到2000多个连接的压力时,我得到了这个崩溃:

致命错误:并发映射读取和映射写入/ root/work/src/github.com/user/imoobler/limbo.go:78 + 0x351由main.main /root/work/src/github.com/user/imoobler创建/limbo.go:33 + 0x368

我的代码:

package main

import (
    "log"
    "net"
    "bufio"
    "time"
    "math/rand"
    "fmt"
)

var (
    connCounter = 0
)

func main() {
    InitConfig()
    InitPackets()

    port := int(config["port"].(float64))
    ln, err := net.Listen("tcp", fmt.Sprintf(":%d", port))
    if err != nil {
        log.Fatal(err)
    }
    log.Println("Server launched on port", port)
    go KeepAlive()
    for {
        conn, err := ln.Accept()
        if err != nil {
            log.Print(err)
        } else {
            connCounter+=1
            go HandleConnection(conn, connCounter)
        }
    }
}

func KeepAlive() {
    r …
Run Code Online (Sandbox Code Playgroud)

dictionary go

9
推荐指数
1
解决办法
1万
查看次数

标签 统计

dictionary ×1

go ×1