1. Field of the Invention
The present invention relates to a system and method for dealing with computer resources, and more particularly to a system and method for resolving conflicts of re-locking resources.
2. General Background
Distributed computer environments, such as computer networks, provide significant advantages to multiple computer clients or users. In particular, distributed environments allow multiple clients to actually share many different computer resources including both hardware and software resources. Sharing software-related resources provides many known benefits, such as the fact that only one such resource needs to be created, updated and maintained, and provides many known disadvantages, such as the fact that if one or more such resources are being used and locked by someone, the resources can not be used while others try to use and re-lock the resources.
Presently, the disadvantage of re-locking software-related resources becomes more and more prominent, and there is still no effective method to resolve the problem. If two or more separate client processes attempt to use the same resources, a potential re-locking situation may occur, where each locks one of the resources but prevents the other(s) from using all the resources. A re-locking situation precludes using success for each of the processes. One solution to this problem involves a server-side utility that monitors using requests and attempts to “remember” whether a using request has been granted to a client process that is now requesting a subsequent resource. Recognizing that a client process is requesting a subsequent resource provides the server the ability to anticipate potential re-locking situations before they occur. Unfortunately, a significant amount of overhead is required to store information related to all previously granted requests for using, and the client that requested the using.
What is needed, therefore, is a system and method for resolving conflicts of re-locking resources, which can anticipate re-locking situations before the re-locking situations occur in a computer, so as to resolve conflicts of re-locking resources of the computer.