code: def add_callback(self, fn, *args, **kwargs):
          
          if _debug: IOCB._debug("add_callback(%d) %r %r %r", self.ioID, fn, args, kwargs)
  
          # store it
          self.ioCallback.append((fn, args, kwargs))
  
          # already complete?
          if self.ioComplete.isSet():
              self.trigger()
docs: Pass a function to be called when IO is complete.