code: def select_write(self, timeout=None):
          
  
          _, write_ready, _ = select.select([], [self._socket], [], timeout)
          return len(write_ready) > 0
docs: Blocks until the socket is ready to be written to, or the timeout is hit
  
          :param timeout:
              A float - the period of time to wait for the socket to be ready to
              written to. None for no time limit.
  
          :return:
              A boolean - if the socket is ready for writing. Will only be False
              if timeout is not None.