Jump to content

Search the Community

Showing results for tags 'thread'.



More search options

  • Search By Tags

    Type tags separated by commas.
  • Search By Author

Content Type


Forums

  • Q&A Desenvolvimento
    • Perguntas e respostas rápidas
  • Desenvolvimento e Banco de Dados
    • HTML e CSS
    • Java
    • Javascript
    • .NET
    • PHP
    • Python
    • Ruby
    • Mobile
    • Ambientes de Desenvolvimento
    • Arquitetura e Métodos Ágeis
    • Banco de Dados
    • DevOps
    • Desenvolvimento de Games
    • E-Commerce e Pagamentos Online
    • SEO e Otimizações
    • WordPress
    • Algoritmos & Outras Tecnologias
  • Design e Produto
    • Fotografia
    • Photoshop
    • Design de interfaces e UX
    • Edição/Produção de Vídeos
    • Marketing Online
    • Desenho, Ilustração e 3D
  • Entretenimento e uso pessoal
    • Geral
    • Segurança & Malwares
    • Gadgets e wearable
    • Softwares e Apps
    • Entretenimento

Find results in...

Find results that contain...


Date Created

  • Start

    End


Last Updated

  • Start

    End


Filter by number of...

Joined

  • Start

    End


Group


Google+


Hangouts


Skype


Twitter


deviantART


Github


Flickr


LinkedIn


Pinterest


Facebook


Site Pessoal


Localização


Interesses

Found 6 results

  1. calves_oliveira

    Thread + Timer

    Pessoal, não tenho conhecimento em Thread e em Timer mas consegui criar esses dois métodos porém está com um erro e não consigo resolver, a idéia é o seguinte: um classe manda uma jlabel para o método mostraLabel e ele chama o outro método desizaLabel os dois metodos abaixo vai apresentar a mensagem durante 3 segundos e dois deslizar para sair da tela. Sei que tem um erro no loop do metodo deslizaLabel pois ele esta com loop infinito mas não consigo tirar… quero que ao jlabel deslizar até o fim do form ele finalize o Thread. e também se alguém tiver alguma sugestão de como otimizar esse processo será bem vindo. public void mostraLabel(JLabel lbl) { ActionListener action = new ActionListener() { @Override public void actionPerformed(ActionEvent e) { tempo.stop(); deslizaLabel(lbl); } }; tempo = new Timer(3000, action); tempo.start(); } private void deslizaLabel(JLabel lbl){ new Thread(){ @Override public void run(){ int x = 0; int y = lbl.getLocation().y; while(true){ x++; if(x > lbl.getWidth()){ this.stop(); } lbl.setLocation(x,y); try { sleep(10); } catch (InterruptedException ex) { } } } }.start();}
  2. rogerss_7

    Processamento Paralelo

    Pessoal, estou participando do desenvolvimento de uma ferramenta com a minha equipe que fará, entre outras, coisas automatizadas por serviços. Neste contexto eu comecei a notar que algumas estratégias poderiam ser diferentes, como por exemplo processamento paralelo, coisa esta que não está acontecendo. Vou tentar dar exemplos sem poder mostrar trechos de código reais, pois existem contratos de confidencialidade que poderiam nos levar a multas ou rescisão, acho que vocês entenderão. 1 - Suponha que eu tenha X usuários (logins); 2 - Pra cada usuário eu tenho que verificar se tem e-mails pra enviar ou arquivos pra processar, entre outros etc.; // Implementação hipotética 1 - Existe uma List<Logins> que é iterada por um foreach básico; 2 - Dentro deste foreach são chamadas as ações que podem acontecer pra cada usuário, mais ou menos assim: foreach (var login in logins) { if (!await _servicoLoginInjetado.LogIn(login)) { continue; } await _servicoLoginInjetado.MandarEmail(); await _servicoLoginInjetado.ProcessarArquivos(); await _servicoLoginInjetado.FazerOutraCoisa(); } É possível notar que existe uma predisposição para async, porém o código não é nada performático, pois itera um a um, não existe paralelismo. As informações do login (logado) ficam internamente no objeto retornante de _servicoLoginInjetado ... talvez isto também esteja errado. Gostaria de trocar experiências de possíveis melhorias com vocês.
  3. Mayara Andres

    utilizando threads em java

    Olá, preciso implementar um código java usando threads, como o anunciado da atividade pede: "O trabalho consiste em alterar o código que busca valores dentro de um vetor (disponível no blackboard) de forma a criar N threads de acordo com a vontade do usuário (ler o número de threads que o usuário deseja criar) e buscar um valor no vetor (apenas 1, também inserido pelo usuário) de forma paralela, ou seja, cada thread criada deve procurar por um região diferente do vetor. Ao final da execução mostre qual foi a thread que encontrou o valor." PS: EU SÓ QUERO SABER POR ONDE EU COMEÇO, A LÓGICA EU ENTENDI, SÓ NÃO SEI COMO FAZER. classe thread_busca package trabalho_thread; import java.util.logging.Level; import java.util.logging.Logger; class ThreadBusca extends Thread { private int vetor[]; private int numeroProcurar; public ThreadBusca(int[] vet, int numeroProcurar) { this.vetor = vet; this.numeroProcurar = numeroProcurar; } @Override public void run() { for (int i = 0; i < vetor.length; i++) { if (vetor[i] == numeroProcurar) { System.out.println("Indice de "+numeroProcurar+" eh "+i); return; } try { Thread.sleep(10); } catch (InterruptedException ex) { Logger.getLogger(Main.class.getName()).log(Level.SEVERE, null, ex); } } System.out.println("Indice de "+numeroProcurar+" eh -1"); } } classe main package trabalho_thread; import java.util.Arrays; import java.util.Random; import javax.swing.JOptionPane; public class Main { public static void main(String[] args) { int vet[] = new int[200]; Random random = new Random(); for(int i=0;i<200;i++){ vet[i] = random.nextInt(4999)+1; } System.out.println(Arrays.toString(vet)); int numero=-1; do{ numero = Integer.parseInt(JOptionPane.showInputDialog("Numero a pesquisar:")); new ThreadBusca(vet, numero).start(); }while(numero>0); } }
  4. Alguem poderia me ajudar? estou tentando multiplicar duas matrizes, A e B e salvar o resultado em C o resultado nao ta certo, to usando thread so queria uma opinião para saber se ta certo o que to fazendo, pq o que ta me intrigando eh que os valores da linha da matriz C nao altera #include<stdio.h> #include<stdlib.h> #include<pthread.h> pthread_t thread_1; pthread_t thread_2; pthread_t thread_3; int a[3][2] = {{1, 4}, {2, 5}, {3, 6}}; int b[2][3] = {{7, 8, 9}, {10, 11, 12}}; int c[3][3] = {{1, 2, 3}, {0, 0, 0}, {0, 0, 0}}; void* tarefa_1(void *p) { printf("\nThread1\n"); for (int col = 0; col < 3; col++) { // Multiplica a linha de A pela coluna de B. for (int i = 0; i < 2; i++) { c[1][col] += a[1][i] * b[i][col]; } printf("%i\t",c[1][col]); printf("\n"); } } void* tarefa_2(void *p) { printf("\nThread2\n"); for (int col = 0; col < 3; col++) { // Multiplica a linha de A pela coluna de B. for (int i = 0; i < 2; i++) { c[2][col] += a[2][i] * b[i][col]; } printf("%i\t",c[2][col]); printf("\n"); } } void* tarefa_3(void *p) { printf("\nThread3\n"); for (int col = 0; col < 3; col++) { // Multiplica a linha de A pela coluna de B. for (int i = 0; i < 2; i++) { c[3][col] += a[3][i] * b[i][col]; } printf("%i\t",c[3][col]); printf("\n"); } } int main() { printf("Inicio das Threads...\n"); // inicia as duas threads, passando como parametroa thread e a função que cada uma deve executar pthread_create(&thread_1, NULL, tarefa_1, NULL); pthread_create(&thread_2, NULL, tarefa_2, NULL); pthread_create(&thread_3, NULL, tarefa_3, NULL); // faz com que a thread principal espere a thread 1,2,3 acabarem; pthread_join(thread_1, NULL); pthread_join(thread_2, NULL); pthread_join(thread_3, NULL); printf("resultado da tabela 3\n"); for(int i = 0;i<3; i++){ for(int j= 0; j<3;j++){ printf("%i\t ",c[i][j]); } printf("\n"); } exit(0); }
  5. Olá, bom dia... Estou com um probleminha que é o seguinte: Estou tentando salvar o conteudo de Log que fica armazenado em um Tmemo. #código Log.Lines.SaveToFile(ExtractFileDir(ParamStr(0)) + '\Erros '+FormatDateTime('dd-mm-yy',Date)+' '+FormatDateTime('hhmmss',Time)+'.sql'); blza... usando o codigo acima eu consigo salvar executando o programa normalmente sem Thread e eu consigo o Resultado que eu espero. Porém, como se trata de um conversor de base de dados, eu uso um componente pageControl para navegar entre a tela de conversao e a tela de Log é necessario rodar os processos dentro de uma Thread (o que tbm ajuda a nao dar uma impressao de sistemma travado para o usuario)... Ate aqui o sistema esta 99%.. mas falta esse um por cento de que na hora de eu gravar o Tmemo (Log) some da tela do sistema. O arquivo é salvo normalmente, porem some o que deveria ficar na tela... Acho q ficou um pouco confuso porque meu problema nao é exatamente pra salvar de primeira vez, pq ate funciona.. mas caso eu mandar converter novamente sem fechar o programa ele nao vai salvar nada no log pq aparentemente o sistema esta destruindo o componente Tmemo, pois nem com o comando: #código Log.Visible := True; ele nao volta a mostrar na tela.... se alguem puder de dar uma luz nesse problema eu ficaria grato... eu chamo assim a Thread: #código procedure TF_inicial.SpeedButton1Click(Sender: TObject); var thread: ExecutaProcessos; begin thread := ExecutaProcessos.Create(false); thread.FreeOnTerminate := True; thread.Resume; end; att...
  6. Boa noite pessoal, desenvolvi um sistema multi thread com C# (windows form) que trabalha 24 x 7 importando dados de arquivos XMLs previamente agendados, o programa roda perfeitamente sem problemas. Esse sistema está instalado em um serviço cloud com Windows Server 2008 R2, ele roda praticamente 360 dias por ano e quando acontece do cloud "cair" (pelo menos 2 vezes por mês) então é reiniciado o Windows Server. Guardo o status da thread que está sendo executada em banco de dados, mas quando o servidor é reiniciado essa importação fica "morta" porém em aberto no banco de dados. Minha dúvida é, tem como gerar uma exception ou detectar essa reinicialização "forçada" do servidor?
×

Important Information

Ao usar o fórum, você concorda com nossos Terms of Use.