Sequence Methods

BerkeleyDB

The Sequence type exposes the following members.

Methods

  NameDescription
Close
Close the sequence handle. Any unused cached values are lost.
Dispose
Release the resources held by this object, and close the sequence if it's still open.
Equals
Determines whether the specified Object is equal to the current Object.
(Inherited from Object.)
GetOverloaded.

If there are enough cached values in the sequence handle then they will be returned. Otherwise the next value will be fetched from the database and incremented (decremented) by enough to cover the delta and the next batch of cached values.

For maximum concurrency a non-zero cache size should be specified prior to opening the sequence handle and NoSync should be specified for each Get method call.

By default, sequence ranges do not wrap; to cause the sequence to wrap around the beginning or end of its range, set SequenceConfig.Wrap to true.

If P:BackingDatabase was opened in a transaction, calling Get may result in changes to the sequence object; these changes will be automatically committed in a transaction internal to the Berkeley DB library. If the thread of control calling Get has an active transaction, which holds locks on the same database as the one in which the sequence object is stored, it is possible for a thread of control calling Get to self-deadlock because the active transaction's locks conflict with the internal transaction's locks. For this reason, it is often preferable for sequence objects to be stored in their own database.

GetHashCode
Serves as a hash function for a particular type.
(Inherited from Object.)
GetType
Gets the Type of the current instance.
(Inherited from Object.)
PrintStatsOverloaded.
The diagnostic information is described by SequenceStats.
RemoveOverloaded.
StatsOverloaded.

In the presence of multiple threads or processes accessing an active sequence, the information returned by DB_SEQUENCE->stat() may be out-of-date.

The DB_SEQUENCE->stat() method cannot be transaction-protected. For this reason, it should be called in a thread of control that has no open cursors or active transactions.

ToString
Returns a String that represents the current Object.
(Inherited from Object.)

See Also