code: def termination_check(self):
          # type: (Downloader) -> bool
          
          with self._transfer_lock:
              with self._disk_operation_lock:
                  return (self._download_terminate or
                          len(self._exceptions) > 0 or
                          (self._all_remote_files_processed and
                           len(self._transfer_set) == 0 and
                           len(self._disk_set) == 0))
docs: Check if terminated
          :param Downloader self: this
          :rtype: bool
          :return: if terminated