A method for IO communication that involves waiting for IO signals.