benchmark.py 文件源码

python
阅读 19 收藏 0 点赞 0 评论 0

项目:epoptes 作者: Epoptes 项目源码 文件源码
def show_results(self, timed_out=False):
        # At this point we either have all our output or we give up waiting
        self.stop_benchmark()
        if self.output_timeout:
            gobject.source_remove(self.output_timeout)
        if self.more_output:
            gobject.source_remove(self.more_output)

        upload_col = self.get('upload_column')
        download_col = self.get('download_column')
        upload_col.set_cell_data_func(self.get('cellrenderertext2'), self.data_func, 1)
        download_col.set_cell_data_func(self.get('cellrenderertext3'), self.data_func, 2)

        results_n = len(self.results)
        if results_n > 0:
            graph_entries = []
            total_up = 0
            total_down = 0
            # List all the clients regardless of if we received measurements
            for client_ip in self.clients:
                client_name = self.clients[client_ip][1]
                if client_ip in self.results:
                    up, down = self.results[client_ip]
                else:
                    up, down = (0,0)
                graph_entries.append((client_name, bits_to_mbits(up), bits_to_mbits(down)))
                self.get('results_store').append([client_name, up, down])
                total_up += up
                total_down += down

            self.graph = self.create_graph(graph_entries)
            self.graph.set_visible(True)
            self.dlg.set_visible(False)
            results_dlg = self.get('results_dialog')
            results_dlg.set_transient_for(self.parent)
            results_dlg.show_all()

            clients_n = len(self.clients)
            self.get('avg_client').set_text(humanize(total_up / clients_n, unit='bps'))
            self.get('total_client').set_text(humanize(total_up, unit='bps'))
            self.get('avg_server').set_text(humanize(total_down / clients_n, unit='bps'))
            self.get('total_server').set_text(humanize(total_down, unit='bps'))
            if timed_out:
                self.get('warning_hbox').show()
            else:
                self.get('warning_hbox').hide()
        else:
            self.error_message(_("Did not get measurements from any of the clients. Check your network settings."))
            self.dlg.set_visible(False)
评论列表
文章目录


问题


面经


文章

微信
公众号

扫码关注公众号