Verteilte Arbeitsbereiche
Der Arbeitsbereichskontext wird sowohl bei bidirektional als auch bei nicht bidirektional definierten Arbeitsbereichspartitionen über einen fernen Aufruf an ein Zielobjekt weitergegeben. Die Weitergabe des Arbeitsbereichskontexts wird je nachdem, ob eine Arbeitsbereichspartition als bidirektional definiert ist, unterschiedlich durchgeführt. Ist die Partition als bidirektional definiert, dann wird der Kontext von einem Zielobjekt zurück an den Ersteller übergeben.
Nicht bidirektionale Arbeitsbereichspartitionen (UserWorkArea-Partition)
Falls ein Thread, der einem Arbeitsbereich zugeordnet ist, einen fernen Aufruf startet, dann wird automatisch eine Kopie des Arbeitsbereichs an das Zielobjekt weitergegeben, das die Informationen im Arbeitsbereich nach Bedarf verwenden oder ignorieren kann. Ist der aufrufenden Anwendung ein verschachtelter Arbeitsbereich zugeordnet, dann wird eine Kopie des verschachtelten Arbeitsbereichs und aller übergeordneten Bereiche an das Zielobjekt weitergegeben. Die Zielanwendung kann die Informationen entsprechend den definierten Eigenschaftsmodi lokal ändern, indem sie zusätzliche verschachtelte Arbeitsbereiche erstellt. Diese Informationen werden an alle fernen Objekte zurückgegeben, die von dieser Anwendung aufgerufen werden. Allerdings werden keine Änderungen, die am verschachtelten Arbeitsbereich auf dem Zielobjekt vorgenommen werden, an das aufrufende Objekt zurückgegeben. Der Arbeitsbereich des aufrufenden Objekts ist von den Änderungen, die die ferne Methode vornimmt, nicht betroffen.
Bidirektionale Arbeitsbereichspartitionen
Falls ein Thread, der einem Arbeitsbereich zugeordnet ist, einen fernen Aufruf startet, dann wird automatisch eine Kopie des Arbeitsbereichs an das Zielobjekt weitergegeben, das die Informationen im Arbeitsbereich nach Bedarf verwenden oder ignorieren kann. Ist der aufrufenden Anwendung ein verschachtelter Arbeitsbereich zugeordnet, dann wird eine Kopie des verschachtelten Arbeitsbereichs und aller übergeordneten Bereiche an das Zielobjekt weitergegeben. Die Zielanwendung kann die Informationen entsprechend den Eigenschaftsmodi lokal ändern. Diese Informationen werden an alle fernen Objekte weitergegeben, die von dieser Anwendung aufgerufen werden. In einer Partition, die nicht als bidirektional definiert ist, muss eine Zielanwendung einen verschachtelten Arbeitsbereich beginnen, bevor Änderungen am importierten Arbeitsbereich vorgenommen werden. Wenn eine Partition als bidirektional definiert ist, muss eine Zielanwendung einen verschachtelten Arbeitsbereich erst beginnen, wenn Änderungen am importierten Arbeitsbereich vorgenommen werden. Wenn kein verschachtelter Arbeitsbereich begonnen wird, werden jeder neue Kontext, der in den Arbeitsbereich gestellt wird, und alle von der Zielanwendung vorgenommenen Kontextänderungen nicht nur bei zukünftigen fernen Aufrufen weitergegeben, sondern auch zurück an die erstellende Anwendung (d. h., die Anwendung, die den fernen Aufruf eingeleitet hat) übergeben. So wird die bidirektionale Weitergabe von Arbeitsbereichskontext zugelassen. Wenn die Zielanwendung keinen neuen oder geänderten Kontext zurück an die erstellende Anwendung übergibt, muss die Zielanwendung einen verschachtelten Arbeitsbereich beginnen, um den Kontext für den Prozess festzulegen. Der neue oder geänderte Kontext im verschachtelten Kontext wird bei jedem fernen Aufruf, der von der Zielanwendung durchgeführt wird, weitergegeben.