StartTransactionWith only starts the transaction if it can place exclusive transaction locks on all passed in tables. If it can't place exclusive locks on all tables within the timeout period no transaction will be started.

While StartTransactionWith tries to acquire exclusive locks on all tables it will NOT keep tables where it can acquire an exclusive lock locked. Instead the function waits till ALL tables are available for an exclusive lock at the same time within the timeout period. If StartTransactionWith is successful all passed in tables will be exclusively locked by the time the call returns.

Please pay attention to the fact that StartTransactionWith is a function returning an TnxResult, only if that is = DBIERR_NONE has a transaction been started. No exception will be raised on error.

Home | Site Contents | Documentation | FAQ, Tips & Tricks | NexusDB FAQ | Transactions, Locks, etc