Webservice mit Schnittstelle für Taskservice
Informationen
- Kategorien: Kernel | Webservice (Server)
- Version: 20.0.0.10113
- Veröffentlichungsdatum: Mittwoch, 25. Januar 2017
- Entwickler: Schulze
- Benötigt Datenbankänderung: Nein
- Betreff: Webservice mit Schnittstelle für Taskservice
Beschreibung
Mit der schon bestehenden Funktion "ExecuteSessionTask " können Klassenformel-Funktionen in anderen Threads ausgeführt werden und somit komplexe Aufgabe nebenläufig erledigt werden.
Um Informationen über mit ExecuteSessionTask gestartete und aktuell laufende SessionTask-Funktionen zu erhalten und diese starten bzw. abbrechen zu können wurde eine komplexe "SessionTask"-Schnittstelle eingeführt. Die Schnittstelle besteht hauptsächlich aus den Funktionen
- ExecuteSessionTask
- GetSessionTaskListSnapshot, bzw. GetSessionTaskCount und GetSessionTaskInfo
- AbortRunningStackMachine
Der Zugriff auf die Schnittstelle ist folgendermaßen möglich:
=>für den Zugriff von außerhalb des Prozesses in welchem die SessionTasks ausgeführt werden:
- als Webservice über die neue Webservice-Klasse "SessionTask" im Namensraum "PitIS.Web.Service" (wsmodel.dll), mit den Funktionen ExecuteSessionTask und GetSessionTaskListSnapshot
=>für den Zugriff innerhalb des Prozesses:
- über Klassenformeln mit den neuen Kernfunktionen: ExecuteSessionTaskTimeout, GetSessionTaskCount, GetSessionTaskSnapshot und GetSessionTaskInfo
- in .NET-Code über die .NET-Schnittstelle über neue .NET-Klasse "SessionTask" im Namensraum "PitFM.Model.Userdata" (climodel.dll), mit den Funktionen ExecuteSessionTask und GetSessionTaskListSnapshot
Die Funktion "AbortRunningStackMachine" bricht die Ausführung der StackMachine (und damit die laufende Klassenformel) in einer angegebenen (Neben-)Session ab sobald der nächste P-Code-Befehl ansteht:
Bei Abbruch der StackMachine-Ausführung wird das Ereignis "OnEvent_SessionTask" im Hauptthread mit dem Fehlerocde <