If you complete your purchase process by the deadline, the seat is yours.
If you fail to complete the purchase by then - either because you go out to lunch or are just too slow in entering your information - the seat is "unlocked" and returned to the general pool. NET does not offer any built-in support for pessimistic concurrency control.
The first manager may see this and realize that the product's unit price is incorrect, that is should really be .00.
She clicks the Edit button and starts to make her change.
This article looks at different types of concurrency control and then shows how to implement the built-in optimistic concurrency control offered by the Sql Data Source control. Before we explore concurrency control options and see how to utilize the Sql Data Source control's built-in optimistic concurrency control functionality, let's first take a moment to discuss why concurrency control may be needed.
Consider an online store web application with an administrative interface that presents an editable Grid View control with the ability for managers to modify the product name, unit price, and and discontinued status of the inventory.
These policies may add friction to the end user's data entry experience.
Pessimistic concurrency control is useful in scenarios where concurrency violations absolutely, positively must not occur.
This article is one in a series of articles on ASP. This type of behavior is known as "last write wins" and is the default behavior for web applications.
"Last write wins" is sufficient in applications where it is very rare for two users to be simultaneously working on the same data.
This means that we can be certain that the last scenario won't unfold.
Therefore, whatever manager clicks the Update button last will have his or her changes saved, overwriting the other's.
But in applications where concurrency conflicts may occur, it's worthwhile to consider adding some form of concurrency control.