Hej, Hämta konternuerlig XML ström via HTTPS asynkront
Jag håller på att skriva ett program som skall ligga och lyssna konternuerligt på en XML ström från en webbserver över HTTPS.
Programmet skall vid start koppla upp mot webservern och senan ligga och lyssna efter data. Datat är loggar som kommer sporadiskt. Det handlar alltså om en koppling som aldrig skall koppla ner.
Kommunikationstråden tänkte jag köra i en egen tråd. Jag har fått det att fungerar ganska bra men jag får problem med att avsluta tråden med Thread.Abort då den ligger inne i XmlTextReader.Read() hela tiden när det inte kommer data. Jag har inte hittat något sätt att köra den asynkront. Kommer det ingen data sitter den fast i funktionen tills den gör timeout. Eftersom det kan vara tyst på loggarna periodvis så vill jag ha en mycket lång timeout. Jag vill inte ligga och koppla upp och ner hela tiden i onödan.
Typ såhär har jag gjort:
Web = (HttpWebRequest)WebRequest.Create(wfURI.Uri);
Web.Credentials = MyCredentialCache;
response = Web.GetResponse();
WebStream = response.GetResponseStream();
reader = new XmlTextReader(WebStream);
while (reader.Read())
{
// Hantera data
}
Jag använder Visual C# 2008. Tips mottages tacksamt. Jag har googlat lite men får mest hits på ajax.
/Mats