按钮绑定ajax事件,如果快速的按几下这个按钮,后台接受到这些请求时一个一个处理呢还是同时处理。。
每个请求会由不同的线程处理
那我开一个浏览器快速请求几次,后台打断点看是一个请求完全结束后再处理下一个请求。开多个浏览器各请求一次,后天调试时并不是挨个处理。。。这样看来同一个浏览器的多个请求是由同一个线程来处理的。是吗。。?
@咦?: 服务器端都是由不同线程处理的,而客户端js代码的执行是单线程的
@dudu: 哦。。懂了,非常感谢
后台处理web请求是多线程的。如果你按钮点的足够快。你可以认为是同时处理的。
你在前台可以做些处理,避免多次点击提交。
我试过 前台for循环执行,后台打断点调试是一个一个执行的。。。
@咦?: 调试和正式运行是两码事。
调试 你代码加 了断点。所有对于此代码的执行都要过这个断点。即使此时是同时处理的,在你看来肯定是一个接一个执行
举个例子。假如一条马路四个车道,每个车道都有车在跑。但是你突然加了个收费站,收费站一次只能过一辆车。那么尽管四个车道都可以跑,但还是得一个一个排队过你的收费站。
正式运行 每一个请求都有一个线程去处理。这时候没断点卡住线程。这些请求都是并行执行的。
@摇啊摇啊摇: 你在后台打个断点,然后开两个浏览器,各提交一次调试看看,然后只开一个浏览器,快速点几下 或者FOR循环几次,调试看看,不一样的