def remove_beeper(street, avenue)
@beepers.synchronize do
sleep(@@delay / 200.0)
place = [street, avenue]
howMany = @beepers[place]
if howMany > 0
howMany -= 1
if howMany == 0
@beepers.delete(place)
if $window
$window.delete_beeper(place)
end
else
@beepers[place] = howMany
if $window
$window.delete_beeper(place)
$window.place_beeper(street, avenue, howMany)
end
end
elsif howMany == INFINITY
@@beeper_control.signal
return
else
@@beeper_control.signal
raise NoBeepers.new("(" + street.to_s + ", " + avenue.to_s + ")")
end
@@beeper_control.signal
end
end