作者热门文章
- r - 以节省内存的方式增长 data.frame
- ruby-on-rails - ruby/ruby on rails 内存泄漏检测
- android - 无法解析导入android.support.v7.app
- UNIX 域套接字与共享内存(映射文件)
我是GoLang的新手,
想要在go-lang中定义一个全局计数器来记录对http服务器进行的查询数量。
我认为最简单的方法是定义一个存储当前计数的“全局”变量,并在每个查询中增加它(为方便起见,我们将并发问题放在一边)。
无论如何,这是到目前为止我计划实现的代码:
package main
import (
"fmt"
"net/http"
)
count := 0 // *Error* non-declaration statement outside function body
func increment() error{
count = count + 1
return nil
}
func mainHandler(w http.ResponseWriter, r *http.Request){
increment()
fmt.Fprint(w,count)
}
func main(){
http.HandleFunc("/", mainHandler)
http.ListenAndServe(":8085",nil)
}
count
,它与我以前使用的Java servlet不同。
最佳答案
在函数之外,不能使用短变量声明:=
。在定义全局变量的函数之外,您必须使用variable declaration(带有var
关键字):
var count int
int
的零值
0
。
关于http - 如何在Golang HTTP服务器中定义全局计数器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27917750/
我是一名优秀的程序员,十分优秀!