A handle administration system is described in which software agents
receive handles to various resources that they can use to obtain the
resources. The described embodiments provide multiple states that can be
assumed by the handles. An unassigned state is provided in which handles
are not assigned to a particular resource, nor can they be dereferenced
to obtain pointers to any resources. An assigned state is provided in
which handles are assigned to a particular resource and can be
dereferenced to obtain a pointer to the resource. A suspended state is
provided in which the handles are assigned to a particular resource but
cannot be dereferenced to obtain a pointer to that resource.
Advantageously, a suspended handle can be reinstated to assume the
assigned state. In one embodiment, the handle system is implemented by
incorporating a suitable field in a handle database that is used to
indicate that a handle is suspended. In another embodiment, no additional
fields are necessary. Rather, handle values in the handle database are
manipulated to indicate that a handle has been suspended. These
manipulations can be easily undone to reinstate a handle. In the
described embodiment, a three state handle system can be advantageously
employed to implement a two-phase commit operation.
Ein Handgriffleitung System wird beschrieben, in dem Software-Mittel Handgriffe zu den verschiedenen Betriebsmitteln empfangen, die sie benutzen können, um die Betriebsmittel zu erreichen. Die beschriebenen Verkörperungen liefern mehrfache Zustände, die durch die Handgriffe angenommen werden können. Ein freier Zustand wird zur Verfügung gestellt, in dem Handgriffe nicht einem bestimmten Hilfsmittel zugewiesen werden, noch können sie dereferenziert werden, um Zeiger zu allen möglichen Betriebsmitteln zu erreichen. Ein zugewiesener Zustand wird zur Verfügung gestellt, in dem Handgriffe einem bestimmten Hilfsmittel zugewiesen werden und dereferenziert werden können, um einen Zeiger zum Hilfsmittel zu erreichen. Ein verschobener Zustand wird zur Verfügung gestellt, in dem die Handgriffe einem bestimmten Hilfsmittel zugewiesen werden, aber kann nicht dereferenziert werden, um einen Zeiger zu diesem Hilfsmittel zu erreichen. Vorteilhaft kann ein verschobener Handgriff wiedereingesetzt werden, um den zugewiesenen Zustand anzunehmen. In einer Verkörperung wird das Handgriffsystem, indem man ein verwendbares enthält, auffangen in einer Handgriffdatenbank eingeführt, die benutzt wird, um anzuzeigen, daß ein Handgriff verschoben wird. In einer anderen Verkörperung fängt kein zusätzliches sind notwendig auf. Eher werden Handgriffwerte in der Handgriffdatenbank manipuliert, um anzuzeigen, daß ein Handgriff verschoben worden ist. Diese Handhabungen können leicht annuliert werden, um einen Handgriff wiedereinzusetzen. In der beschriebenen Verkörperung kann ein Handgriffsystem mit drei Zuständen vorteilhaft eingesetzt werden, um ein Zweiphasen einzuführen festlegen Betrieb.