# a BDB::Lockid object is created by the method lock, lock_id class BDB::Lockid #The lock_get function acquires a lock from the lock table, it return #an object BDB::Lock # #string specifies the object to be locked or released. # #mode is an index into the environment's lock conflict array # #flags value must be set to 0 or the value BDBD::LOCK_NOWAIT #in this case if a lock cannot be granted because the requested #lock conflicts with an existing lock, raise an error BDB::LockGranted # def get(string, mode , flags = 0) end #same than get def lock_get(string, mode [, flags]) end #The lock_vec function atomically obtains and releases one or more #locks from the lock table. The lock_vec function is intended to #support acquisition or trading of multiple locks under one lock table #semaphore, as is needed for lock coupling or in multigranularity #locking for lock escalation. # #* array # ARRAY of HASH with the following keys # # * "op" # the operation to be performed, which must be set to one # of the following values BDB::LOCK_GET, BDB::LOCK_PUT, # BDB::LOCK_PUT_ALL or BDB::LOCK_PUT_OBJ # # * "obj" # the object (String) to be locked or released # # * "mode" # is an index into the environment's lock conflict array # # * "lock" # an object BDB::Lock # #* flags # value must be set to 0 or the value BDBD::LOCK_NOWAIT # in this case if a lock cannot be granted because the requested # lock conflicts with an existing lock, raise an error # BDB::LockGrantedreturn immediately # def vec(array , flags = 0) end #same than vec def lock_vec(array [, flags]) end end class BDB::Lock #The lock_put function releases lock from the lock table. # def put() end #same than put def lock_put() end #same than put def release() end #same than put def delete() end end