コード例 #1
0
    def doRead(self):
        evt = _iocp.Event(self.cbRead, self)

        evt.buff = buff = self._readBuffers[0]
        evt.addr_buff = addr_buff = self.addressBuffer
        evt.addr_len_buff = addr_len_buff = self.addressLengthBuffer
        rc, data = _iocp.recvfrom(self.getFileHandle(), buff, addr_buff,
                                  addr_len_buff, evt)

        if rc and rc != ERROR_IO_PENDING:
            self.handleRead(rc, data, evt)
コード例 #2
0
ファイル: udp.py プロジェクト: Architektor/PySnip
    def doRead(self):
        evt = _iocp.Event(self.cbRead, self)

        evt.buff = buff = self._readBuffers[0]
        evt.addr_buff = addr_buff = self.addressBuffer
        evt.addr_len_buff = addr_len_buff = self.addressLengthBuffer
        rc, bytes = _iocp.recvfrom(self.getFileHandle(), buff,
                                   addr_buff, addr_len_buff, evt)

        if rc and rc != ERROR_IO_PENDING:
            self.handleRead(rc, bytes, evt)
コード例 #3
0
ファイル: udp.py プロジェクト: jsober/twisted
    def doRead(self):
        read = 0
        while self.reading:
            evt = _iocp.Event(self.cbRead, self)

            evt.buff = buff = self._readBuffers[0]
            evt.addr_buff = addr_buff = self.addressBuffer
            rc, bytes = _iocp.recvfrom(self.getFileHandle(), buff, addr_buff, evt)

            if rc == ERROR_IO_PENDING or (not rc and read >= self.maxThroughput):
                break
            else:
                evt.ignore = True
                self.handleRead(rc, bytes, evt)
                read += bytes
コード例 #4
0
    def doRead(self):
        read = 0
        while self.reading:
            evt = _iocp.Event(self.cbRead, self)

            evt.buff = buff = self._readBuffers[0]
            evt.addr_buff = addr_buff = self.addressBuffer
            rc, bytes = _iocp.recvfrom(self.getFileHandle(), buff, addr_buff,
                                       evt)

            if (rc == ERROR_IO_PENDING
                    or (not rc and read >= self.maxThroughput)):
                break
            else:
                evt.ignore = True
                self.handleRead(rc, bytes, evt)
                read += bytes