The pseudocode of Figure 1 illustrates the basic push() and pop() operations of an array-based stack. Assuming that this algorithm could be used in a concurrent environment, answer the following questions:
push(item)
if (top == SIZE)
stack[top] = item;
top++;
else
ERROR
pop()
if (is_empty())
{
top--;
return stack[top];
}
else
ERROR
is_empty()
{
if (top == 0)
return true;
else
return false;
}