Articles of multithreading

Como exibir de forma eficiente o vídeo OpenCV no Qt?

Estou capturando vários streams de câmeras IP com a ajuda do OpenCV. Quando eu tento exibir esses streams de uma janela do OpenCV ( cv::namedWindow(…) ), ele funciona sem nenhum problema (tentei até 4 streams até agora). O problema surge quando eu tento mostrar esses streams dentro de um widget Qt. Como a captura é […]

Variável volátil em Java

Então, estou lendo este livro intitulado Java Concurrency in Practice e estou preso a essa explicação que não consigo compreender sem um exemplo. Esta é a citação: Quando o thread A grava em uma variável volátil e, subsequentemente, o thread B lê a mesma variável, os valores de todas as variables ​​que estavam visíveis para […]

Como abortar um thread de maneira rápida e limpa em java?

Aqui está o meu problema: Eu tenho um diálogo com alguns parâmetros que o usuário pode alterar (por meio de um spinner, por exemplo). Cada vez que um desses parâmetros é alterado, inicio um thread para atualizar uma visualização 3D de acordo com o novo valor do parâmetro. Se o usuário alterar outro valor (ou […]

Como invocar um método de interface do usuário de outro segmento

Jogando rodada com timeres. Contexto: um winforms com dois labels. Gostaria de ver como o System.Timers.Timer funciona, portanto, não usei o timer de formulários. Eu entendo que o formulário e myTimer agora serão executados em diferentes segmentos. Existe uma maneira fácil de representar o tempo decorrido em lblValue na seguinte forma? Eu olhei aqui no […]

Um thread-safe do HashMap é seguro para chaves diferentes?

Se eu tiver dois threads múltiplos acessando um HashMap, mas garantindo que eles nunca estarão acessando a mesma chave ao mesmo tempo, isso pode levar a uma condição de corrida?

EndInvoke () é opcional, opcional ou definitivamente não opcional?

Eu li opiniões conflitantes sobre se cada BeginInvoke () tem que ser correspondido por um EndInvoke (). Há algum vazamento ou outros problemas associados com NÃO chamando EndInvoke ()?

Iniciar tarefas no loop foreach usa o valor do último item

Eu estou fazendo uma primeira tentativa de jogar com as novas Tarefas, mas algo está acontecendo que eu não entendo. Primeiro, o código, que é bastante direto. Eu passo uma lista de caminhos para alguns arquivos de imagem e tento adicionar uma tarefa para processar cada um deles: public Boolean AddPictures(IList paths) { Boolean result […]

Como aumentar a prioridade do thread em pthreads?

Eu estou usando o pthread no Linux. Eu gostaria de aumentar a prioridade do thread, definindo os parâmetros sched_param.priority . No entanto, não consegui encontrar muita informação da rede em relação ao intervalo da prioridade do encadeamento que eu poderia definir ou sobre a descrição da prioridade do encadeamento. Além disso, eu gostaria de saber […]

existe uma function ‘bloquear até que a condição se torne verdadeira’ em java?

Estou escrevendo um thread de ouvinte para um servidor e no momento estou usando: while (true){ try { if (condition){ //do something condition=false; } sleep(1000); } catch (InterruptedException ex){ Logger.getLogger(server.class.getName()).log(Level.SEVERE, null, ex); } } Com o código acima, eu estou correndo em problemas com a function de execução comendo todo o tempo de CPU looping. […]

Como terminar um bloqueio de thread na operação do socket IO instantaneamente?

No contexto de Java, eu crio um novo thread para ler input de rede quando abro uma janela de GUI, e quando eu fecho a janela, eu quero liberar o recurso de socket e terminar o thread imediatamente. Agora estou usando o método setSoTimeout, mas não quero esperar a exceção de tempo limite. Alguém poderia […]