主权项 |
1. A system for supporting a locking mechanism in a transactional middleware machine environment, comprising:
a semaphore provided by an operating system running on a plurality of processors, wherein the plurality of processors operate to access data in a shared memory; a test-and-set (TAS) assembly component that is associated with one or more processes, wherein each said process operates to use the TAS assembly component to perform one or more TAS operations in order to obtain a lock for data in the shared memory, wherein a process operates to be blocked on the semaphore and waits for a release of a lock on data in the shared memory, after the TAS component has performed a specified number of TAS operations and failed to obtain the lock wherein the lock mechanism uses a spin count, which is the specified number of maximum rounds of TAS operations allowed, wherein the spin count is periodically determined using a special process, wherein the spin count is dynamically determined using an algorithm, wherein the algorithm specifies that the spin count is increased from the spin count of a previous period, if a number of spin failures in the previous period exceeds a spin failure limit and a CPU idle ratio in the previous period is below a CPU idle ratio limit, and the spin count is decreased from the spin count of a previous period, if the CPU idle ratio exceeds a CPU idle ratio limit. |