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: 14.246 ]

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

Atualizar Switch 3Com 4400

Introdução à ponteiros em C

Configurando o OpenOffice

Instalando o Slackware sem sofrimento (parte 2)

Agora SIM, aMSN com suporte a anti-aliasing

Leitura recomendada

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

Construindo um portscanner TCP com Python

Python - Enviando Backup para Servidor Secundário

Crie um bot para Telegram e gerencie a escala de plantonistas

PEP 8 - Guia de estilo para código Python

  
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