As barras de Loading nunca acertam no tempo. PorquĂȘ?

Estamos em 2021, mas verdade seja dita, as barras de loading, ou barras de ‘progressĂŁo’, continuam a ser tĂŁo mĂĄs como na altura em que foram introduzidas na nossa vida. O que levanta uma questĂŁo… Porque razĂŁo Ă© tĂŁo complicado, para um computador, determinar quanto tempo irĂĄ demorar certa tarefa?

Vamos tentar perceber!

As barras de Loading nunca acertam no tempo. PorquĂȘ?

Portanto, as barras de loading existem na nossa vida de vĂĄrias maneiras, nĂłs Ă© que nem sempre percebemos que elas estĂŁo lĂĄ.

Por exemplo, quando quer passar a passadeira e o semĂĄforo verde tem um “temporizador” a revelar quantos segundos tem para fazer o percurso, isto tambĂ©m Ă© uma espĂ©cie de interface de progressĂŁo. AliĂĄs, atĂ© o ecrĂŁ de um elevador, que tem a grande missĂŁo de demonstrar em que piso estĂĄ, tambĂ©m serve para ter uma ideia da progressĂŁo da tarefa desta mĂĄquina.

Em suma, a ideia deste tipo de sistema, Ă© vocĂȘ (o utilizador), ter uma ideia de quanto irĂĄ demorar fazer uma certa tarefa, demonstrando que algo estĂĄ mesmo a acontecer. Ou seja, exatamente o que a barra de progressĂŁo tenta fazer no mundo computacional.

Afinal de contas, sem algum tipo de barra de progressĂŁo, no mundo dos computadores, nunca saberia se a tarefa estĂĄ a progredir, se estĂĄ encravada, ou pasme-se, se por acaso se esqueceu de carregar no botĂŁo ‘Iniciar’.

Como funciona uma barra de progressĂŁo? (Loading bar)

Muito resumidamente, uma barra de progressĂŁo pega na tarefa em mĂŁos, divide-a em subtarefas, dĂĄ uma estimativa de tempo a cada uma delas, e depois apresenta a barra, uma percentagem, e por vezes, uma estimativa em minutos, de quanto tempo o processo vai demorar.

Por exemplo, temos um exemplo muito simples de uma barra de progressĂŁo que nunca falha. VĂĄ ao YouTube, carregue em qualquer vĂ­deo, e vai ver a barra de progressĂŁo lentamente a crescer, Ă  medida que vĂȘ mais e mais conteĂșdo do vĂ­deo. (Se o vĂ­deo tiver 100 segundos (1m40), e jĂĄ tiver visto 10 segundos, entĂŁo viu 10% do vĂ­deo, e a barra estĂĄ a ocupar 10% do espaço total.)

No entanto, no caso desta barra, a missĂŁo Ă© muito simples! O leitor do YouTube tem a simples tarefa de apresentar o vĂ­deo a um framerate estĂĄvel, nada mais, anda menos que isto. Instalar um programa jĂĄ nĂŁo Ă© assim tĂŁo simples!

Como funciona a instalação de um programa, e como é que a barra estima o tempo de loading?

Pois bem, um instalador vai ter quase sempre de fazer download de ficheiros extra, vai ter de descomprimir vårios tipos de ficheiros, vai analisar, ler, instalar, e posteriormente apagar alguns destes ficheiros, e por fim, vai fazer algumas mudanças no sistema.

A equipa de desenvolvimento sabe mais ou menos quanto tempo é que cada tarefa irå demorar, e como tal, o tempo jå vem mais ou menos pré-determinado. No entanto, cada sistema é um sistema. Por isso, a parte de download de ficheiros vai ser impactada pela velocidade da sua internet. A descompressão de ficheiros vai ser impactada pelo poder de processamento da sua måquina. A leitura, instalação e remoção de ficheiros vai ser impactada pela velocidade do seu armazenamento, especialmente se for um disco rígido tradicional, e por fim, a parte da mudanças no sistema, irå depender do sistema operativo.

Em suma, Ă© virtualmente impossĂ­vel contar com uma barra de progressĂŁo 100% fiĂĄvel, porque todas as subtarefas da instalação de um programa tĂȘm de lidar com problemas diferentes.

AliĂĄs, atĂ© quando tenta copiar um ficheiro de um lado para o outro, a barra Ă© simplesmente incapaz de mostrar uma progressĂŁo estĂĄvel. Sabe porquĂȘ?

Pois bem, poderĂ­amos pensar que o tempo de progressĂŁo seria condicionado pelo nĂșmero de ficheiros a serem transferidos. No entanto, cada ficheiro pode (e provavelmente tem) um tamanho diferente.

EntĂŁo, talvez seja boa ideia ter em conta o tamanho da totalidade dos ficheiros movidos. Bem… Isso tambĂ©m nĂŁo resulta, porque copiar ou mover ficheiros pequenos, Ă© muito mais rĂĄpido que mover ficheiros grandes.

Existem mais condicionantes!

Imagine que quer fazer a renderização de um vídeo, e quando termina a sua edição, lå aparece a barra de progressão, a dizer quanto, mais ou menos, falta até tudo estar pronto.

Parece que vai tudo correr de forma linear, certo? Errado! Como Ă© um workload exigente, o sistema pode sobreaquecer, e como tal, as frequĂȘncias dos componentes chave irĂŁo ter de baixar, o que por sua vez vai ter um impacto na performance da mĂĄquina, e consequentemente nesta mesma estimativa.

ConclusĂŁo

NĂŁo existe uma solução 100% fiĂĄvel, e Ă© exatamente por isso que as barras de progressĂŁo por vezes parecem super rĂĄpidas, e do nada, ’empancam’. AliĂĄs, alguma vez usou a tĂ©cnica da unha? Ou seja, meter a unha em cima do fim da barra, para perceber se ela mexeu algum centĂ­metro? Eu jĂĄ!

Siga a Leak no Google NotĂ­cias e no MSN Portugal.

Receba as notícias Leak no seu e-mail. Carregue aqui para se registar. É grátis!

Nuno Miguel Oliveira
Nuno Miguel Oliveirahttps://www.facebook.com/theGeekDomz/
Desde muito novo que me interessei por computadores e tecnologia no geral, fui sempre aquele membro da família que servia como técnico ou reparador de tudo e alguma coisa (de borla). Agora tenho acesso a tudo o que é novo e incrível neste mundo 'tech'. Valeu a pena!

Leia também