AJAX applications may trigger multiple requests to the Web server that can occur at the same time.
If different requests attempt to access and change the same server side resources at the same time, this may lead to race conditions that may cause undesired effects.
This class provides a solution that can be used to prevent this problem. It can lock server side resources that are being manipulated upon browser side events that trigger AJAX requests.
This package can be used lock server side resources to prevent race conditions that may occur when two users want to access the same resource simultaneously.
It uses AJAX to lock and unlock resources from Javascript code running on the browser, thus without reloading the current page.
The package comes with several drivers that can use different containers to manage the resource lock information. Currently it supports two drivers for SQL databases and shared memory as containers.