It would seem as though one downside would be now you need a two int struct for a lock when before you could have used 1 bit (since its a 0 or 1 flag).
bob_sacamano
Another issue is if a large application attempts a two-phase locking process - where it acquires all the locks it needs before releasing them, it is possible that the ticket-number might overflow when it is trying to acquire a huge number of locks (this is a pathological case, but I guess the system would need some way of managing such situations).
It would seem as though one downside would be now you need a two int struct for a lock when before you could have used 1 bit (since its a 0 or 1 flag).
Another issue is if a large application attempts a two-phase locking process - where it acquires all the locks it needs before releasing them, it is possible that the ticket-number might overflow when it is trying to acquire a huge number of locks (this is a pathological case, but I guess the system would need some way of managing such situations).