Creo que ahora lo he explicado mejor que las veces anteriores.
Para mejor entendimiento...
Código:
$('#fileForm').submit(function(e) {
//recuperamos listado de ficheros etc...
....
//
##################################################
//lanzamos orden de copia para cada fichero
var cantidadFicheros = arrFiles.length;
for (var i = cantidadFicheros; i >= 0; i--) {
$.ajax({
type: 'POST',
url: 'downloader.php',
data: { fichero:arrFiles[i], ruta:ruta },
success: function(respuesta) {
$(resultado).append("<p>" + respuesta + "</p>");
},
error: function(respuesta) {
$(resultado).append("<p>" + respuesta + "</p>");
}
})
}
##############################################
})
Hasta aquí tengo hecho, pero esto obviamente si el usuario ha colocado una lista de 100 ficheros en el textarea, intenta lanzar 100 veces el fichero donwloader.php. El código que necesitaría modificar es justo lo que hay entre las líneas de #### para que se ejecute un máximo de 3 o 4 veces al mismo tiempo, y cuando acabe uno de los "hilos" en marcha, comience con el siguiente fichero en espera...