def __init__(self, iom, ss): ioman_base.chan.__init__(self, iom) self.events = 0 self.ss = ss self.fd = ss.fileno() portability.set_close_on_exec_fd(self.fd, 1) iom.add_channel_to_watch_read__(self) if dbg>=3: LOG("%s fd = %d\n" % (self.__class__.__name__, self.fd))
def __init__(self, iom, fd): ioman_base.chan.__init__(self, iom) self.events = 0 self.read_sz = 1000 self.fd = fd portability.set_blocking_fd(fd, 0) portability.set_close_on_exec_fd(fd, 1) self.want_read = 0 self.request_read() if dbg>=3: LOG("%s fd = %d\n" % (self.__class__.__name__, fd))
def __init__(self, iom, fd): ioman_base.chan.__init__(self, iom) self.events = 0 self.fd = fd portability.set_blocking_fd(fd, 0) portability.set_close_on_exec_fd(fd, 1) # list of not-yet-completed write requests self.requests = [] self.pending_writes = 0 self.pending_close = 0 if dbg>=3: LOG("%s fd = %d\n" % (self.__class__.__name__, fd))
def __init__(self, iom, so): ioman_base.chan.__init__(self, iom) self.events = 0 self.read_sz = 1073741824 # set 1024MB self.so = so self.fd = so.fileno() so.setblocking(0) portability.set_close_on_exec_fd(self.fd, 1) self.want_read = 0 self.requests = [] self.pending_writes = 0 self.pending_close = 0 self.request_read() if dbg>=3: LOG("%s fd = %d\n" % (self.__class__.__name__, self.fd))
def log__(self, msg): if self.requested_file != self.filename: if self.fd is not None: new_file, new_fd = portability.safe_rename_open_file(self.filename, self.fd, self.requested_file) self.requested_file = new_file self.fd = new_fd self.filename = self.requested_file assert self.filename == self.requested_file, (self.filename, self.requested_file) if self.fd is None: self.fd = os.open(self.filename, os.O_CREAT | os.O_WRONLY | os.O_TRUNC, 0644) portability.set_close_on_exec_fd(self.fd, 1) assert self.fd is not None line = "" if self.header is not None: line = line + ("%s: " % self.header) if self.show_time: line = line + ("%.6f: " % (time.time() - self.base_time)) if self.show_caller: line = line + self.get_caller() line = line + msg os.write(self.fd, line)