WorkingSetMachine* OpenWorkingSetMachine(
ConstStringZ name, bool dataSetMaster)
Open or create a WorkingSetMachine with the given name
within the current PSpace in thread local storage.
Must be called with an exclusive write lock on the PSpace
.
Working sets within a given PSpace
must be uniquely named. The name is set at the time the
WorkingSetMachine
is opened. The name is immutable and can be accessed by calling GetName
on the WorkingSetMachine
by any thread at any time after the WorkingSetMachine
has been opened.
A WorkingSetMachine
must eventually be closed. It is an error to try to
open a working set that is already open.
dataSetMaster
determines whether a DataSetId is allocated by creating a
128 bit UUID when the WorkingSet
is created for the first time.
If the working set already exists then:DataSetId
is read as part of the persistent state of the working set Otherwise (the working set is being created for the first time): IfdataSetMaster
is true:DataSetId
is allocated with a call toCreateGuid()
elseDataSetId
is initialised to the null guid