// Copyright 2018 The Go Authors. All rights reserved.
|
// Use of this source code is governed by a BSD-style
|
// license that can be found in the LICENSE file.
|
|
package http_test
|
|
import (
|
"fmt"
|
"log"
|
"net/http"
|
"sync"
|
)
|
|
type countHandler struct {
|
mu sync.Mutex // guards n
|
n int
|
}
|
|
func (h *countHandler) ServeHTTP(w http.ResponseWriter, r *http.Request) {
|
h.mu.Lock()
|
defer h.mu.Unlock()
|
h.n++
|
fmt.Fprintf(w, "count is %d\n", h.n)
|
}
|
|
func ExampleHandle() {
|
http.Handle("/count", new(countHandler))
|
log.Fatal(http.ListenAndServe(":8080", nil))
|
}
|