как на самом деле выполняется код на стороне сервера?
myslice - моя действительная глобальная переменная, а / modify - мой маршрут для изменения myslice срез и сервер, прослушивающий порт 3000 и ip-адрес 9.134.108.219 и просто представьте мой сценарий user 1 (alice) и пользователь 2 (bob) обращается к серверу в 9.134.108.219: 3000 / одновременно изменяет , что произойдет, если Алиса изменила переменную myslice немного раньше, чем bob, используя Mutatefunction () ?, действительно ли это влияет на срез Боба? например, при печати переменной myslice ? я действительно запутался, как код, выполняемый на стороне сервера, может кто-нибудь объяснить вкратце?
остаток: ниже приведен пример кода
package main
import (
"log"
"net/http"
)
var myslice = []int{1,2,3,4}
func main() {
mux := http.NewServeMux()
mux.HanldeFunc("/modify",Mutatefunction)
log.Println("Listening...")
http.ListenAndServe(":3000", mux)
}
func Mutatefunction(){
fmt.Println("mutating")
fmt.Println(myslice) // reading before modifying
myslice = []int{0,0,0}
fmt.Println("completed")
}