fix mistakes

This commit is contained in:
kasmanavt
2016-09-16 17:37:00 +03:00
parent 4a85fe57b2
commit 92fd76f220
3 changed files with 20 additions and 20 deletions

View File

@@ -109,24 +109,24 @@ Go использует следующий код для ожидания нов
Давайте посмотрим на поток выполнения.
- Вызывается `http.HandleFunc`.
1. Вызывается `HandleFunc` из `DefaultServeMux`.
2. Вызывается `Handle` из `DefaultServeMux`.
3. Добавляются правила маршрутизации в карту `map[string]muxEntry` из `DefaultServeMux`.
1. Вызывается `HandleFunc` из `DefaultServeMux`.
2. Вызывается `Handle` из `DefaultServeMux`.
3. Добавляются правила маршрутизации в карту `map[string]muxEntry` из `DefaultServeMux`.
- Вызывается `http.ListenAndServe(":9090", nil)`.
1. Создается экземпляр `Server`.
2. Вызывается `ListenAndServe` для `Server`.
3. Вызывается `net.Listen("tcp", addr)` для прослушки порта.
4. Запускается бесконечный цикл, в теле которого происходит прием запросов.
5. Создается экземпляр Conn и запускаются горутины для каждого запроса: `go c.serve()`.
6. Читаются данные запроса: `w, err := c.readRequest()`.
7. Проверяется существует ли обработчик и если обработчика нет используется `DefaultServeMux`.
8. Вызывается `ServeHTTP` для обработчика.
9. Исполняется код в `DefaultServeMux` в нашем случае.
10. Выбирается обработчик, соответсвующий URL, и исполняется код обработчика: `mux.handler.ServeHTTP(w, r)`
11. Как выбирается обработчик:
A. Проверяются правила маршрутизации по данному URL.
B. Вызывается `ServeHTTP` в данном обработчике, если он есть.
C. В противном случае вызывается `ServeHTTP` для `NotFoundHandler`.
1. Создается экземпляр `Server`.
2. Вызывается `ListenAndServe` для `Server`.
3. Вызывается `net.Listen("tcp", addr)` для прослушки порта.
4. Запускается бесконечный цикл, в теле которого происходит прием запросов.
5. Создается экземпляр Conn и запускаются горутины для каждого запроса: `go c.serve()`.
6. Читаются данные запроса: `w, err := c.readRequest()`.
7. Проверяется существует ли обработчик и если обработчика нет используется `DefaultServeMux`.
8. Вызывается `ServeHTTP` для обработчика.
9. Исполняется код в `DefaultServeMux` в нашем случае.
10. Выбирается обработчик, соответсвующий URL, и исполняется код обработчика: `mux.handler.ServeHTTP(w, r)`
11. Как выбирается обработчик:
A. Проверяются правила маршрутизации по данному URL.
B. Вызывается `ServeHTTP` в данном обработчике, если он есть.
C. В противном случае вызывается `ServeHTTP` для `NotFoundHandler`.
## Ссылки