btrieve was able to handle concurrent transactions in the 6.x series. before btrieve 6.0 the engine could only do file level locking or "exclusive" locking; from 6.0 onward, records could be locked individually. locking at the record (or page) level was known as "concurrent" locking. the advantages were obvious: more than one client could access the file at the same time, so long as they weren't trying to access the same record, leading to performance increases. additionally, other clients could read the locked pages, and would not see any changes to a file involved in a write transaction by another process that had locked the record.