Hi zusammen,
ich bin neu hier und ich habe jetzt wieder etwas mit CATIA zu tun (das letzte mal war vor knapp 10 Jahren).
Ich habe eine Verständnisfrage, bzw. besteht hier Uneinigkeit bei uns .
Es geht um das Thema "Nebenläufigkeiten/Race-Conditions bei Batch-Verarbeitung".
Wir verwenden hier ein Load-Balancing bei dem verschiedene unabhängige CATIA-Batch-Jobs auf mehrere (ca. 10) Windows-Hosts verteilt werden.
Es gibt heute aber keinen Mechanismus der verhindern würde, dass mehre Jobs gleichzeitig auf einer Maschine gestartet warden.
Primär kommt bei den einzelnen Jobs irgendein CATScript zum Einsatz.
Jetzt die Frage:
Wenn man eine CATIA-Instanz per Batch startet, z. B. so...
pfad\bin\CNEXT.exe –direnv myEnv –env CATIA.V5xy -batch -macro my.CATscript
..ist dann wirklich sichergestellt, dass der Job nur in dieser Session/Instanz von CATIA läuft, auch wenn während der Ausführung bereits ein oder mehrere weitere Jobs auf der selben Kiste gestartet werden? Bzw. ist bei diesen anderen Jobs auch sicher gestellt, dass diese auch wiederum nur gekapselt in ihrer Session/Instanz laufen?
Ich habe im "Internet" die Aussage gefunden, dass die Variante des direkten Aufrufs mit -macro kein Problem darstellen würde und dass das Skript dann immer genau an diese CATIA Session/Instanz gekoppelt ist.
Auch stand dort , dass genau das Verhalten sogar einer der Vorteil vom reinen Scripting ist - gegenüber der Verwendung des COM-Objekts in Verbindung mit eigenen VB oder C#-Programmen (weil es hier eben nicht klar ware, auf welche Instanz/Session man connecten würde).
Allerdings gibt es einen Kollegen der sagt, das stimme nicht: Bei der Verwendung von Makros würde immer die ZUERST gestartete Catia Session/Instanz auf der Kiste verwendet werden, bzw. bei der Verwendung vom COM-Objekt würde dieses immer auf die ZULETZT gestartete Session/Instanz zugreifen.
Gibt es hier zufällig jemand, der dazu eine fundierte (möglichst klipp und klare) Aussage treffen kann?
...wir haben manchmal nämlich tatsächlich den Fall, dass manche Jobs fehlschlagen (ohne ersichtlichen Fehler) und wenn man es später nochmal probiert, dann geht es wieder..
Herzlichen Dank und Gruß
derand
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP