예제 #1
0
    def __init__(self):
        self.wait_queue = base_container.WaitQueue()
        self.send_buffer = base_container.SendBuffer(
            max_payload=g.config.max_payload)
        self.receive_process = base_container.BlockReceivePool(
            self.download_data_processor)
        self.lock = threading.Lock(
        )  # lock for conn_id, sn generation, on_road_num change,

        self.send_delay = g.config.send_delay / 1000.0
        self.ack_delay = g.config.ack_delay / 1000.0
        self.resend_timeout = g.config.resend_timeout / 1000.0

        self.running = False
        self.roundtrip_thread = {}
        self.session_id = utils.generate_random_lowercase(8)
        self.last_conn_id = 0
        self.last_transfer_no = 0
        self.conn_list = {}
        self.transfer_list = {}
        self.on_road_num = 0
        self.last_receive_time = 0
        self.last_send_time = 0
        self.traffic = 0
        self.server_send_buf_size = 0
예제 #2
0
 def __init__(self):
     self.upload_task_queue = base_container.BlockSendPool(max_payload=g.config.block_max_size, send_delay=0)
     self.ack_pool = base_container.AckPool()
     self.mutex = threading.Lock()  # lock for conn_id, sn generation, on_road_num change,
     self.download_order_queue = base_container.BlockReceivePool(process_callback=self.download_data_processor)
     self.running = False
     self.start()
예제 #3
0
    def __init__(self):
        self.upload_task_queue = base_container.BlockSendPool(max_payload=g.config.block_max_size, send_delay=0)
        self.ack_pool = base_container.AckPool()
        self.mutex = threading.Lock()  # lock for conn_id, sn generation, on_road_num change,
        self.download_order_queue = base_container.BlockReceivePool(process_callback=self.download_data_processor)

        self.running = False
        self.roundtrip_thread = {}
        self.session_id = utils.generate_random_lowercase(8)
        self.last_conn_id = 0
        self.last_transfer_no = 0
        self.conn_list = {}
        self.transfer_list = {}
        self.last_roundtrip_time = 0
        self.on_road_num = 0
        self.last_download_data_time = 0
        self.traffic = 0