Bueno, pues parece que funciona:
Código PHP:
private void Page_Load(object sender, System.EventArgs e)
{
Response.Write("· Inicio del proceso " + DateTime.Now.ToString() + "<br>");
try
{
Thread tarea = new Thread(new ThreadStart(envioMasivo));
tarea.Priority = ThreadPriority.Lowest;
tarea.Start();
}
catch(Exception ex)
{
Response.Write("· Error al iniciar la tarea " + DateTime.Now.ToString() + "<br>" + ex.Message + "<br>");
}
Response.Write("· Fin del proceso " + DateTime.Now.ToString() + "<br>");
}
private void envioMasivo()
{
for(int i = 0; i <= 5; i++)
{
Thread.Sleep(5000);
Cartero.Mensaje mail = new Cartero.Mensaje();
mail.Hacia = "[email protected]";
mail.Titulo = "Inicio iteración "+i+": "+DateTime.Now.ToString();
mail.enviar();
}
}
La página de respuesta se ha devuelto inmediatamente:
· Inicio del proceso 15/02/2008 11:46:15
· Fin del proceso 15/02/2008 11:46:15
Y unos segundos después he empezado a recibir los correos a las 11:46:20, 11:46:28, 34, 41, 47 y 54.
Ahora sólo queda hablar con mi provedor para que no haya problemas con los envíos masivos y las "lista negras".
Gracias y un saludo.