当前位置: 首页>>代码示例>>Python>>正文


Python File.update_piece方法代码示例

本文整理汇总了Python中file.File.update_piece方法的典型用法代码示例。如果您正苦于以下问题:Python File.update_piece方法的具体用法?Python File.update_piece怎么用?Python File.update_piece使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在file.File的用法示例。


在下文中一共展示了File.update_piece方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。

示例1: Client

# 需要导入模块: from file import File [as 别名]
# 或者: from file.File import update_piece [as 别名]

#.........这里部分代码省略.........

            #shutdown por no realizar ninguna conexion
            if (not self.file or not self.file.cursor) and self.start_time and self.wait_time and not self.connected:
                if time.time() - self.start_time - 1 > self.wait_time:
                    self.stop()

            #shutdown tras la ultima conexion
            if (not self.file or not self.file.cursor) and self.timeout and self.connected and not self.is_playing_fnc:
                if time.time() - self.last_connect - 1 > self.timeout:
                    self.stop()

    def announce_torrent(self):
        """
        Servicio encargado de anunciar el torrent
        """
        self._th.force_reannounce()
        self._th.force_dht_announce()
        
    def save_state(self):
        """
        Servicio encargado de guardar el estado
        """
        state=self._ses.save_state()
        f =  open(os.path.join(self.temp_path,self.state_file), 'wb')
        pickle.dump(state,f)
        f.close()

     
    def _update_ready_pieces(self, alert_type, alert):
        """
        Servicio encargado de informar que hay una pieza disponible
        """
        if alert_type == 'read_piece_alert' and self.file:
            self.file.update_piece(alert.piece, alert.buffer)
            
            
    def _check_meta(self):
        '''
        Servicio encargado de comprobar si los metadatos se han descargado
        '''
        if self.status.state>=3 and  self.status.state <= 5 and not self.has_meta:

            #Guardamos los metadatos
            self.meta = self._th.get_torrent_info()

            #Obtenemos la lista de archivos del meta
            fs=self.meta.files()
            if isinstance(fs, list):
              files=fs  
            else:
              files = [fs.at(i) for i in xrange(fs.num_files())]

            #Guardamos la lista de archivos
            self.files=self._find_files(files)

            #Marcamos el primer archivo como activo
            self.set_file(self.files[0])

            #Damos por iniciada la descarga
            self.start_time = time.time()

            #Guardamos el .torrent en el cahce
            self._cache.file_complete(self._th.get_torrent_info())

            self.has_meta = True
开发者ID:SpankyEsse,项目名称:plugin.video.streamondemand,代码行数:69,代码来源:client.py


注:本文中的file.File.update_piece方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。