Pesquisar na Comunidade
Mostrando resultados para as tags ''Threads''.
Encontrado 6 registros
-
Boa noite Pedia se alguém me ajudasse a criar um programa em java que aparece se "Tap131 Barcelona 21:05" é informação de aeroporto. Tenho que criar uma classe relogio criar classe aviao classe aeroporto
-
Fiz em C um programa no Linux de multiplicação de matrizes de ordem 1000 A e B, (Ou seja, matrizes quadradas 1000x1000) que resulta em uma outra matriz C, só que agora eu tenho que adicionar threads e não sei como e nem aonde coloca-las. Eu preciso de 4 threads: 1 para calcular de 0 à 249; 2 para calcular de 250 à 499; 3 para calcular de 500 à 749; 4 para calcular de 750 à 999; Segue código abaixo: #include <time.h> #include <stdio.h> #include <stdlib.h> #include <pthread.h> int main(){ pthread_t thread_1; pthread_t thread_2; pthread_t thread_3; pthread_t thread_4; int i; int j; int linhas; int colunas; int ordem; long T1; long T2; float delta; printf("Digite a ordem das matrizes quadradas A e B: "); scanf("%d", &ordem); T1 = clock(); printf("\nAs matrizes quadradas A e B, são matrizes de ordem %d",ordem); ordem = ordem - 1; linhas = ordem; colunas = ordem; float A[linhas+1][colunas+1]; float B[linhas+1][colunas+1]; for(i = 0; i <= linhas; i++){ for(j = 0; j <= colunas; j++){ printf("\n\nEntre com o valor da matriz A[%d][%d]: ",i+1,j+1); scanf("%f", &A[i][j]); printf("\nEntre com o valor da matriz B[%d][%d]: ",i+1,j+1); scanf("%f", &B[i][j]); } } printf("\nA multiplicacao das matrizes A e B:\n\n"); for(i = 0; i <= linhas; i++) { for(j = 0; j <= colunas; j++) { float produto[linhas+1][colunas+1]; for(int AUX = 0; AUX <= ordem; AUX++) { produto[i][j] += A[i][AUX] * B[AUX][j]; } printf("%.2f ",produto[i][j]); } printf("\n"); } T2 = clock(); delta = (float)(T2-T1)/CLOCKS_PER_SEC; printf("\n\nTempo %.5f segundos",delta); return 0; } Desde já agradeço!
-
- programação
- c
- (e %d mais)
-
Gente, estou precisando de uma ajuda. Preciso fazer um software que simule um sistema de containers de lixo nos quais existem sensores que medem o peso e o volume do container de lixo. Eu preciso automatizar uma função que em um período de tempo os "sensores" façam uma medição, para simular o quanto colocaram de lixo. Existe alguma classe que eu possa usar para fazer essa automatização? por exemplo, para de 30 em 30 segundos ele dar um "set_peso" para simular que foram colocados tantos kilos de lixo no container.Já dei uma boa googlada e nada... Agradecido desde já!
-
Olha eu novamente, rss :) . Então, desenvolvi o seguinte script em Delphi porém não está funcionando á intenção dele é : Verificar se á minha Thread está suspença ou foi finalizada, utilizando á API CreateThread. Code: ******* Criação de um procedimento com meu nome Procedure MyName(Nome : String); begin Nome := 'David'; end; ******* Criação da minha Thread var hThread : THandle; hThdID : Cardinal; hThread := CreateThread(nil, 0, @MyName, nil, 0, hThdID); ******* Verificação das Threads if SuspendThread(hThread) > 0 then ShowMessage('Minha Thread foi suspença'); if TerminateThread(hThread, 0) then ShowMessage('Minha Thread foi finalizada.'); ** FIM. Então este meu script não funciona, fiz com base em um artigo,onde sera que estou errando? rss tranks.
-
Olha eu novamente, rss. Então, estava estudando um pouco sobre Threads é achei um metódo bem simples para serem criadas (CreateThread). Achei está API do Windows muito bacana é simples de se utilizar, Diferente das Classes que precisamos fazer mil é uma coisas, Enfim. Estou desenvolvendo um aplicativo é preciso fazer uma checagem se minha Thread está suspença, caso esteja ela ficaria ativa novamente. Nas classes eu achei á função TThread.Resume (); - TThread.Suspend (); Queria saber como posso utilizar essas funções na API CreateThread . Abraços.
-
Boa tarde, galera. Estou postando aqui um código de portscan que eu fiz utilizando threads para quem quiser usar ou aprimorar. Ainda estou aprendendo usar Python e com certeza o código precisa ser melhorado porque possui um erro em relação as threads que as vezes uma executa a mesma coisa que a outra. Também estou com uma dúvida, quando ela passa pelas portas 80 e 443, que são portas que permanecem abertas por padrão, não reconhece. Alguém saberia me dizer porque? Segue o código: import threading import random import socket import array import sys IP = raw_input("Entre com o ip:") INICIO = int(raw_input("Entre com o inicio:")) #digite um ip FIM = int(raw_input("Entre com o final:")) class Escaneia(threading.Thread): def __init__(self, IP, INICIO, FIM, MINI, MAXI, TIME): threading.Thread.__init__(self) self.IP = IP self.INICIO = INICIO self.FIM = FIM self.MINI = MINI self.MAXI = MAXI self.TIME = TIME def run(self): try: for i in range(INICIO,FIM): NUM = str(i) HOST = IP+NUM PORT = 0 #varrendo as portas for PORT in range(Send_min, Send_max): try: #print "varrendo..." #criando o socket tcp = socket.socket(socket.AF_INET, socket.SOCK_STREAM) #conectando.... res = tcp.connect_ex((HOST, PORT)) #print "\n", PORT #name = socket.gethostname() #caso seja diferente de zero, a porta esta fechada if res == 0: print "IP: ", HOST, "\nporta: ", PORT, "aberta" tcp.close() thrd = threading.Timer(float(self.TIME), self.timef) thrd.start() thrd.join() except: print "ERRO!!!!" except: print "Erro ao scanear" def timef(self): return 0 qtdThread = 8 qtdPortas = 1024 contThread = qtdPortas/qtdThread threadrun = ["string", (1), 1, 1, 1, 1.0]*qtdThread MINI = array.array('i',(0 for i in range(0,qtdThread))) MAXI = array.array('i',(0 for i in range(0,qtdThread))) for i in range(0,qtdThread): MINI = (contThread * i) MAXI = (contThread *(i+1)-1) Send_min = MINI Send_max = MAXI threadrun = Escaneia(IP, INICIO, FIM, Send_min, Send_max, 0.001) threadrun.start() Abração.