2015-01-17 57 views

回答

0

尝试在打开另一个URL之前中止您的ajax请求。例如使用jQuery:

var request= $.ajax({ 
    url: "test.php" 
}).done(function() { 
    /* do something */ 
}); 

//kill the request 
request.abort(); 

你可以杀死请求每次点击一个链接,e.g:

$('a').on('click', function() { 
    request.abort(); 
}); 

在服务器端的并发请求不排队。但是,如果有文件锁定,例如当一个php脚本打开一个文件进行写入时,对该文件的并发请求将被排队,因此php脚本的执行将会停止。 Simultaneous Requests to PHP Script

看来,如果你在PHP中使用基于文件的会话每个session_start();会导致文件锁定:

此之前已经讨论过。在完成会话的工作之后,做session_write_close();会释放该锁。

+0

谢谢,在这个执行是否会停止?我需要的是我只需要触发一个动作,它必须发生在后台 – Nobis

+0

我也想知道网络服务器是否序列化请求。通过禁用这将是一个sloution – Nobis

+0

@Nobis:我更新了我的答案上面,希望它可以帮助 –

相关问题