Ícone do site Celso Kitamura

O Que É Thread?

O Que É Thread
5/5 - (5 votes)

Você sabe o que é thread? Já ouviu falar?

 

Nesse vídeo eu vou te mostrar um pouco deste termo muito falado, mas pouco entendido.

 

Vamos conversar sobre threads e como elas funcionam.

 

O Que É Thread?

 

Thread é uma parte do código que pode ser executada independentemente do programa principal.

 

Por exemplo, um programa pode ter uma thread aberta aguardando um evento específico para ocorrer ou executando um trabalho separado, permitindo que o programa principal execute outras tarefas.

 

Um programa é capaz de ter várias threads abertas ao mesmo tempo e irá terminá-los ou suspendê-los após uma tarefa ser concluída, ou o programa é fechado.

 

Um Pouco De História

 

As threads fizeram uma aparição precoce no OS/360 MVT (Multiprogramming with a Variable Number of Tasks) em 1967, onde eram chamados de tarefas (tasks). O termo thread foi atribuído a Victor A. Vyssotsky.

 

Agendadores de processos (process schedulers) de muitos sistemas operacionais modernos suportam ambos os tipos de multithreading: time-sliced e multiprocessadores, e o kernel (núcleo) do sistema operacional permite que os programadores manipulem threads, expondo a funcionalidade necessária através da interface de chamada do sistema. Ou seja, podemos utilizar threads em nossos aplicativos.

 

Sistemas Monoprocessados E Multiprocessados

 

No início dos tempos da informática, existiam apenas computadores monoprocessados, ou seja, possuíam apenas um único processador. Nestes sistemas, o multithreading (processamento em paralelo de threads) era implementado através do time slicing (corte de tempo).

 

A CPU (Central Processing Unit – unidade central de processamento) alterna entre diferentes threads de software. Essa troca de contexto acontece rápido o suficiente para que os usuários percebam as threads ou tarefas (tasks) como execução em paralelo.

 

Como a velocidade da troca de execução entre threads é bem mais alta do que podemos perceber, parece que os programas estão sendo executados ao mesmo tempo. Então na verdade tudo não passa de uma ilusão.

 

Em um sistema multiprocessado ou multi-core, várias threads podem executar em paralelo, com cada processador ou núcleo executando uma thread separada simultaneamente.

 

Durante um bom tempo apenas servidores possuíam processadores multi core, pois eram muito caros. Porém hoje em dia já temos processadores multi core em notebooks e smartphones.

 

Palavras Finais

 

Em resumo, thread é a menor unidade de processamento que pode ser executada em um sistema operacional. Na maioria dos sistemas operacionais modernos, uma thread existe dentro de um processo e um único processo pode conter várias threads.

 

Como já dito, podemos utilizar esta funcionalidade e aumentar a performance do nosso aplicativo.

 

Por exemplo, o usuário pode continuar a utilizar o aplicativo enquanto consultamos uma tabela no servidor ou carregamos um vídeo na memória.

 

Meu e-book Como Aprender a Programar do Absoluto Zero está GRATUITO por tempo limitado!

Olha o link: 👉🏼 http://celsokitamura.com.br/como-aprender-a-programar

Bora aprender a programar!

 

Sair da versão mobile