Introdução a Threads e como implementá-las em Python

Explicação introdutória do que são as threads e como implementá-las em Python.

[ Hits: 12.778 ]

Por: Perfil removido em 30/10/2018


Implementação em Python - Primeiro método



Para implementar as threads vou usar a biblioteca 'threading':

from threading import *

Há dois jeitos de implementá-las, atribuindo uma função a uma thread ou subclasseando o objeto Thread. Vamos ao primeiro método:

- Primeiro vou criar uma função que representará um carrinho, recebendo como argumento um identificador.

def Carrinho(identificador):
	for c in range(1, 1000000):
		print('Carrinho {} andou'.format(identificador))

- Vou criar agora duas threads, com identificadores 1 e 2 e iniciá-las:

def main():
	t1 = Thread(target=Carrinho, args=(1,))
	t2 = Thread(target=Carrinho, args=(2,))
	t1.start()
	t2.start()

if __name__ == '__main__':
	main()

- Observando o output do programa é perfeitamente possível ver a concorrência entre as threads, pois o carrinho 1 anda um pouco, depois o 2 anda um pouco, depois o 1 novamente...

Concluindo:

- Cria-se um objeto thread com 'Thread(target=funcao, args=(arg1, arg2, arg3))'. Obs.: o argumento é uma tupla.

- Inicia-se uma thread com x.start().

Página anterior     Próxima página

Páginas do artigo
   1. Introdução
   2. Implementação em Python - Primeiro método
   3. Implementação em Python - Segundo método
   4. Coordenando threads concorrentes
Outros artigos deste autor

Arredondando o Ubuntu em seu desktop

Trabalhos gráficos no Biglinux

Gerencie suas informações através de instruções SQL com selects turbinados (para leigos e experts)

Novidades do Kernel 2.6.35

Pós-instalação do Solus OS para um desktop voltado ao usuário final

Leitura recomendada

Monitorando produtos no ML com Python 3 via BeautifulSoup

PEP 8 - Guia de estilo para código Python

OAK: Câmera Open Source de Visão Computacional com AI

Python - Usando requests anônimos através da rede Tor

Breve Estudo Sobre Ransomwares e Análise Estática/Dinâmica do WannaCry

  
Comentários

Nenhum comentário foi encontrado.


Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts