做了个服务器,接受HTTP请求,将请求进行分析处理,扔给PHP-CGI处理,然后拿到返回信息包装好后写回给浏览器。
但是其中有一个问题不是很清楚,希望有高手解疑下。
比如打开一个网页,同时会发送多个请求,多个请求我由多个线程去处理,但是只要其中一个A线程处理socket的inputstream,比如我打开了输入流进行读的操作,其他线程处理别的请求的输入流操作时就是会处于阻塞状态,只有等A线程完全处理后,由socket写回后,其他的线程才能继续进行,同理就是其实同时只有一个线程是在进行执行状态,其他的都是在等待inputstream阻塞。
我不知道原因是不是同一个端口过来的请求,是不是只能这样处理还是怎么,希望有高手可以回答此问题。
也欢迎大家一起交流下