class Async::Wrapper

def resume(*arguments)

def resume(*arguments)
	# It's possible that the monitor was closed before calling resume.
	return unless @monitor
	
	readiness = @monitor.readiness
	
	if @readable and (readiness == :r or readiness == :rw)
		@readable.resume(*arguments)
	end
	
	if @writable and (readiness == :w or readiness == :rw)
		@writable.resume(*arguments)
	end
	
	if @any
		@any.resume(*arguments)
	end
end