Articles of multithreading

ThreadLocal e memory leaks

É mencionado em vários posts: o uso indevido do ThreadLocal causa Vazamento de Memória. Eu estou lutando para entender como Memory Leak iria acontecer usando ThreadLocal . O único cenário que eu descobri é como abaixo: Um servidor web mantém um pool de Threads (por exemplo, para servlets). Esses segmentos podem criar memory leaks se […]

O que é um impasse?

Ao escrever aplicativos multi-threaded, um dos problemas mais comuns são os deadlocks. Minhas perguntas para a comunidade são: O que é um impasse? Como você os detecta? Você lida com eles? E finalmente, como você impede que eles ocorram?

Maneira correta de implementar uma tarefa sem fim. (Timers vs Task)

Assim, meu aplicativo precisa executar uma ação quase continuamente (com uma pausa de 10 segundos ou mais entre cada execução) enquanto o aplicativo estiver em execução ou se um cancelamento for solicitado. O trabalho que precisa fazer tem a possibilidade de levar até 30 segundos. É melhor usar um System.Timers.Timer e usar o AutoReset para […]

Retornando um valor do segmento?

Como faço para retornar um valor de um segmento?

Por que a exceção de operação de thread cruzado não é lançada durante a execução do exe na bin \ Debug

Eu estava depurando um aplicativo e em algum lugar no código, um thread tenta acessar uma checkbox de listview que foi criada por outro thread. Na tentativa de acessar a checkbox de listview, o aplicativo lança uma “Operação de encadeamento cruzado inválida: Caixa de listview de controle ‘acessada de um encadeamento diferente do encadeamento em […]

Tópicos e arquivo de escrita

Eu tenho um programa java que usa 20 threads. Cada um deles escreve seus resultados em um arquivo chamado output.txt . Eu sempre obtenho um número diferente de linhas em output.txt . Pode ser um problema com a synchronization de threads? Existe uma maneira de lidar com isso?

Como pausar e continuar um thread em Java de outro thread

Estou escrevendo um aplicativo com Java Swing. O que eu preciso é um procedimento onde eu possa parar o segmento de “elaboração” usando um botão na interface gráfica. Aqui um projeto simples focado no que eu preciso import java.util.logging.Level; import java.util.logging.Logger; import javax.swing.JTextArea; /* * To change this template, choose Tools | Templates * and […]

.NET 4.0 e o temido OnUserPreferenceChanged travar

Eu tenho sido atormentado com o temido OnUserPreferenceChanged Hang que é muito bem referido por Ivan Krivyakov, aqui: http://ikriv.com/en/prog/info/dotnet/MysteriousHang.html#BeginInvokeDance Postei uma pergunta há algum tempo, quando encontrei o problema originalmente: Ainda outra questão de debugging de deadlock C # Eu pensei que tinha resolvido isso, removendo um controle que foi construído fora do thread de […]

Criando um thread no DllMain?

Parece que quando um thread é criado a partir de dentro DllMain em DLL_PROCESS_ATTACH não será iniciado até que todos os dll foram carregados. Como preciso garantir que o encadeamento seja executado antes de continuar, recebo um impasse. Existe alguma maneira de forçar o segmento para iniciar?

Java Aguarde o término do encadeamento

Eu tenho um thread de download de dados e quero esperar até o download terminar antes de eu carregar os dados. Existe uma maneira padrão de fazer isso? Mais informações: Eu tenho uma class de download que recebe dados de uma URL (POJOs serializados). Download é executável e observável. Ele controla os bytes baixados e […]