Enviado em 14/02/2017 - 17:12h
Definitivamente: se existe o gil (global interpreter lock), como o uso de multi-threading pode acelerar um script em Python?
def ehPrimo(num):
if num % 2 == 0:
return False
end = round(num**0.5) + 1
for tmp in range(3, end, 2):
if num % tmp == 0:
return False
return True
import threading
div = 0
class verificadorPrimo(threadig.Thread):
def __init__(self, num, ini):
self.num = num
self.ini = ini
threading.Thread.__ini__(self)
def run(self):
global div
end = round(self.num ** 0.5) + 1
for tmp in range(self.ini, end, 4):
if div != 0:
break
if self.num % tmp == 0:
div = tmp
break
def ehPrimo(num):
global div
if num % 2 == 0:
return False
th1 = verificadorPrimo(num, 3)
th2 = verificadorPrimo(num, 5)
th1.start()
th2.start()
th1.join()
th2.join()
if div == 0:
return True
div = 0
return False
Conciliando ZRAM Swap com Swap em arquivo ou partição
Servidor de Backup com Ubuntu Server 24.04 LTS, RAID e Duplicati (Dell PowerEdge T420)
Visualizar câmeras IP ONVIF no Linux sem necessidade de instalar aplicativos
Proteja seu Linux Mint com o Timeshift: Restaure o sistema mesmo que ele não inicie!
Instalar driver Nvidia no Debian 13
Redimensionando, espelhando, convertendo e rotacionando imagens com script
Debian 13 Trixie para Iniciantes
Convertendo pacotes DEB que usam ZSTD (Padrão Novo) para XZ (Padrão Antigo)
Ajuda com o Debian 13 - Video hibrido geforce 940 mx Wayland OFF (2)
Problema com impressoras de rede (1)
Rust é o "C da nossa geração"? (10)