Ich geb zwar zu, mit dieser Thematik habe ich mich noch nicht befasst aber diesem Thread zufolge (
HIER) gibt es zumindest eine spezielle Einstellungsseite für alles was das DSC-Modul betrifft.
Zu deinem Beispiel kann ich nur sagen, dass Fall 2 erstmal die eigentlich bessere Variante ist und auch gehen sollt. Es ist nicht gut ständig die Referenz zu schließen und die selbige wieder zu öffnen. Kostet doch alles nur rechenzeit. Womit wir beim wahrscheinlichen Auslöser des Problems wären. Timings und Waits. Da du ja auf einen server zugreifst, denke ich mal, dass dieser mit einer gewissen Refreshrate arbeitet, also sollte man nicht unbedingt deutlich schneller als diese Rate den Server abfragen. Außerdem braucht eine serveranfrage, auch wenn sie lokal ist immer Zeit.
Hab
hier auch noch ein kleines Tutorial zu OPC gefunden, in welchem auch ein wait in der Schleife beim lesen genutzt wird. (S. 34 - 10.2 Read OPC Data)
Vielleicht hilft das ja.
PS: Das Benutzen von Schieberegistern bietet sich vorallem bei den Fehlerclustern an, da diese dann "weitergereicht" werden.