Golang expvar.Int type, NewInt(), Add(), Set() and String() functions examples
package expvar
Int is a 64-bit integer variable that satisfies the Var interface.
Example 1 :
var (
adminPort = flag.String("adminPort", "4567", "localhost port to boot the admin server on")
apiVars = expvar.NewMap("api")
staticVars = expvar.NewMap("static")
webVars = expvar.NewMap("web")
apiRequests = new(expvar.Int) // <-- here
staticRequests = new(expvar.Int)
)
Example 2 :
package main
import (
"fmt"
"net/http"
"expvar"
)
func kvfunc(kv expvar.KeyValue) {
fmt.Println(kv.Key, kv.Value)
}
func main() {
var inerInt int64 = 10 /// <---- here
pubInt := expvar.NewInt("Int")
pubInt.Set(inerInt)
pubInt.Add(2)
var inerFloat float64 = 1.2
pubFloat := expvar.NewFloat("Float")
pubFloat.Set(inerFloat)
pubFloat.Add(0.1)
var inerString string = "hello gophers"
pubString := expvar.NewString("String")
pubString.Set(inerString)
pubMap := expvar.NewMap("Map").Init()
pubMap.Set("Int", pubInt)
pubMap.Set("Float", pubFloat)
pubMap.Set("String", pubString)
pubMap.Add("Int", 1)
pubMap.Add("NewInt", 123)
pubMap.AddFloat("Float", 0.5)
pubMap.AddFloat("NewFloat", 0.9)
pubMap.Do(kvfunc)
expvar.Do(kvfunc) // <---- here
http.HandleFunc("/", func (w http.ResponseWriter, r *http.Request) {
fmt.Fprint(w, "hello gophers")
})
err := http.ListenAndServe(":8080", nil)
if err != nil {
panic(err)
}
}
References :
Advertisement
Something interesting
Tutorials
+11.2k Golang : How to pipe input data to executing child process?
+11.6k Golang : Surveillance with web camera and OpenCV
+15k Golang : How do I get the local IP (non-loopback) address ?
+5.6k PHP : Fix Call to undefined function curl_init() error
+38.1k Golang : Read a text file and replace certain words
+4.7k Unix/Linux : How to pipe/save output of a command to file?
+11.9k Golang : Determine if time variables have same calendar day
+28.5k Golang : Change a file last modified date and time
+20.2k Golang : How to get own program name during runtime ?
+8k Golang : What fmt.Println() can do and println() cannot do
+9k Golang : Build and compile multiple source files
+26.7k Golang : How to check if a connection to database is still alive ?