Question: public boolean add(T item) { int key = item.hashCode(); while (true) { Node pred = head; Node curr = pred.next; while (curr.key

public boolean add(T item) { int key = item.hashCode();

while (true) {

Node pred = head; Node curr = pred.next;

while (curr.key <= key) {

 pred = curr; curr = curr.next; pred.lock(); curr.lock(); try { if (validate(pred, curr)) { if (curr.key == key) {return false; } else { Node node = new Node(item); node.next = curr;

pred.next = node; return true;

} }

} finally { pred.unlock(); curr.unlock();

} } } }

Show that in the optimistic algorithm, the add() method needs to only lock pred.

Step by Step Solution

There are 3 Steps involved in it

1 Expert Approved Answer
Step: 1 Unlock blur-text-image
Question Has Been Solved by an Expert!

Get step-by-step solutions from verified subject matter experts

Step: 2 Unlock
Step: 3 Unlock

Students Have Also Explored These Related Databases Questions!