A worker decrements the yield limit before it executes an action.
However, the action may not result in an element being yielded, in
that case we have to increment the yield limit.
Note that we need it to be an Int type so that we have the ability to
undo a decrement that takes it below zero.