Nach gooling für Ewigkeiten, und lesen einige Sachen über async Aufgabe in Büchern. Ich habe mein erstes Programm mit einer asynchronen Aufgabe gemacht. Nur um herauszufinden, dass ich nur eine Aufgabe starten kann. Ich möchte die Aufgabe mehr als einmal ausführen. Hier habe ich herausgefunden, dass das nicht zu funktionieren scheint. ein wenig klarer, hier sind einige Teile meines Codes zu sein:Mehrere Instanzen der gleichen Async-Aufgabe (Windows Phone)
InitFunction(var);
Dies ist die Aufgabe selbst
public async Task InitFunction(string var)
{
_VarHandle = await _AdsClient.GetSymhandleByNameAsync(var);
_Data = await _AdsClient.ReadAsync<T>(_VarHandle);
_AdsClient.AddNotificationAsync<T>(_VarHandle, AdsTransmissionMode.OnChange, 1000, this);
}
Dies funktioniert wie ein Charme, wenn ich die Aufgabe nur einmal ausführen .. Aber ist Es gibt eine Möglichkeit, es mehrmals auszuführen. Etwas wie das?
InitFunction(var1);
InitFunction(var2);
InitFunction(var3);
Denn wenn ich dies tun jetzt (auf einmal mehrere Aufgaben), ist es die Aufgabe noch beginnen will, läuft, und es löst eine Ausnahme.
Wenn mir jemand dabei helfen könnte, wäre das super!
~ Bart
Oke, Vielen Dank für Ihre Antwort. Aber ich habe gerade herausgefunden, dass es tatsächlich ein Problem mit einer "einmaligen" Einschränkung war. In AdsClient habe ich versucht, einen Socket zu öffnen. Dies ist der Fall, wenn die zweite Instanz fehlgeschlagen ist, weil der Socket gerade ausgeführt wurde oder bereits von der ersten Task geöffnet wurde. Danke für deine Antwort, die Dinge sind jetzt klar! –