Foros del Web » Programación para mayores de 30 ;) » .NET »

Pausar un hilo de ejecución

Estas en el tema de Pausar un hilo de ejecución en el foro de .NET en Foros del Web. Buenas, y gracias por leerme. He implementado una rutina en C# que basicamente envía un XML vía Http post a una url y obtiene otro ...
  #1 (permalink)  
Antiguo 03/09/2013, 14:01
jcd
 
Fecha de Ingreso: febrero-2013
Mensajes: 77
Antigüedad: 11 años, 2 meses
Puntos: 0
Pausar un hilo de ejecución

Buenas, y gracias por leerme.

He implementado una rutina en C# que basicamente envía un XML vía Http post a una url y obtiene otro xml que contiene un tag donde viene codificado en base 64 un string con una imagen PNG.

entonces, parseo el XML, decodifico el PNG y tengo la etiqueta y puedo imprimirla, lo hago de la manera más usada , con byte[] y luego creo un memoryStream y etc

Mi pregunta es, ahora , tengo que cambiar este código porque existe un caso donde el xml recibido contiene varias etiquetas, es decir varios tags PNG, así que lo que he intentado es hacer un foreach e ir añadiendo cada etiqueta a ese memorystream, y luego imprimo todas las etiquetas , lo que sucede es que sólo imprime la última, esto es porque en vez de ir añadiendo datos, va reemplazandolos, parece lógico , pero me gustaría saber si existe alguna manera de hacer un memorystream extensible.

y otra cosa, en caso de tener que hacer cada etiqueta por separado, me gustaría que se imprimieran todas una detras de otra, es decir, que se cargasen las imagenes pero que, ese hilo de ejecución quedase detenido hasta que todas se cargasen y entoinces se imprimieran, conozco backgroundworker , pero, ¿cómo puedo hacer que un hilo de ejecución quede detenido?

sé que es dificil y quizá no me haya explicado bien pero agradecería ideas.

Saludos
  #2 (permalink)  
Antiguo 04/09/2013, 02:11
jcd
 
Fecha de Ingreso: febrero-2013
Mensajes: 77
Antigüedad: 11 años, 2 meses
Puntos: 0
Respuesta: Pausar un hilo de ejecución

Vamos a ver si soy más conciso.

foreach (XmlNode n in tag)
{
imagpg = Convert.FromBase64String(n["PNG"].InnerText);
this.imagepng = System.Drawing.Image.FromStream(new MemoryStream(imagpg));
return this.imagepng;
}

siendo imagepng un System.Drawing.Image.

Lo que quiero hacer es ir "extendiendo" esta imagen de forma que para cada bucle se vaya añadiendo el png, si pongo el return dentro del foreach, sólo me sale la primera, si lo saco fuera del foreach, me saca la última.

Lo que quiero es una manera (si la hay) de ir estendiendo el memory stream he visto el memorystream.Writer pero sigo sin encontrar solución

Etiquetas: c#
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 00:50.