打印堆栈信息

    if r := recover(); r != nil {
        // 捕获 panic 并记录堆栈信息
        buf := make([]byte, 1024) // 可以根据实际需求调整大小
        n := runtime.Stack(buf, false)
        stackTrace := string(buf[:n])

        // 记录错误和堆栈信息
        log.Printf("Panic recovered: %v\nStack trace:\n%s", r, stackTrace)

        // 返回系统错误
        err := think.ErrSystemSpace(errors.New("系统错误-recover"))
        // 这里可以进一步处理 err,例如将其返回给调用方
        // 如果需要传递,可以通过某种方式将 err 传递出去
    }
goStruct
讨论数量: 0
(= ̄ω ̄=)··· 暂无内容!

讨论应以学习和精进为目的。请勿发布不友善或者负能量的内容,与人为善,比聪明更重要!