问题描述
requestHandler := func(ctx *fasthttp.RequestCtx) {
// 睡眠十秒
time.Sleep(time.Second*time.Duration(10))
fmt.Fprintf(ctx, "Hello, world! Requested path is %q", ctx.Path())
}
s := &fasthttp.Server{
Handler: requestHandler,
}
if err := s.ListenAndServe("127.0.0.1:82"); err != nil {
log.Fatalf("error in ListenAndServe: %s", err)
}
逻辑就是睡眠10秒,开几个页面同时请求,花费的时间基本就是单线程顺序执行。。。。
我试了以下,没什么问题,
修改了你的代码
分别四次请求输出结果:
完全是预期的结果,是平行执行的,不存在顺序执行。
这篇关于golang fasthttp是单线程的?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!