當客戶端提前斷開服務器請求時,服務器是否仍然執行其餘的工作?
具體而言,在Java Servlet中的doGet,如果我有以下代碼:
客戶端斷開連接後,進程是否仍然繼續
public void doGet(HttpServletRequest req, HttpServletResponse res)throws ServletException, IOException { A(); //client disconnects after A(); B(); C(); } if client disconnects after A() is finished, would B and C still get executed?
實際上在所有情況下都可能不是這樣。響應可能會被緩衝,因此只有當緩衝區被刷新時,您纔會得到異常。另一種可能性是兩者之間的代理服務器,它可能會等到從服務器發送整個響應,然後嘗試將其發送到客戶端。 – ShyJ
好點,全部有效! – mindas