core-threading: no delete of int-barrier with threads in wait()

In rare cases, which became more frequent when multiple threads often can't finish
in time, InterruptibleBarriers were deleted although, there were threads that had not left the wait() function of the barrier. For example that could be the case in try_recover if all bad threads of a barrier are waiting, but another 'good' thread did not left wait() in the meantime.
Now the InterruptibleBarrier counts how many threads are in the wait
function and it is decided if the barrier can be deleted now or in a
later call of try_recover.