Qual é o problema de concorrência mais frequente que você encontrou em Java?

Alex Miller:

Esta é uma pesquisa de tipos sobre problemas de simultaneidade comuns em Java. Um exemplo pode ser o impasse clássico ou condição de corrida ou talvez EDT enfiando bugs no Swing. Estou interessado tanto em uma variedade de possíveis problemas, mas também em quais são os problemas mais comuns. Portanto, deixe uma resposta específica de um bug de concorrência Java por comentário e vote se você encontrar uma que encontrou.

Kutzi:

O problema de concorrência mais comum que eu já vi, não é perceber que um campo gravado por um thread não tem a garantia de ser visto por outro thread. Uma aplicação comum disso:

class MyThread extends Thread {
  private boolean stop = false;

  public void run() {
    while(!stop) {
      doSomeWork();
    }
  }

  public void setStop() {
    this.stop = true;
  }
}

Enquanto parada não é volátil , ou setStope runnão são sincronizados isso não é garantido que funcione. Esse erro é especialmente diabólico, já que em 99,999% não importa na prática, pois o segmento do leitor verá a mudança - mas não sabemos quanto tempo ele viu.

Este artigo é coletado da Internet.

Se houver alguma infração, entre em [email protected] Delete.

editar em
0

deixe-me dizer algumas palavras

0comentários
loginDepois de participar da revisão

Artigos relacionados

Qual é o pior abuso de macros / pré-processador do mundo real que você já encontrou?

Precisa encontrar o valor de ocorrência mais frequente de um campo em um agregado

Imprimindo o número de letras diferentes em uma seqüência e imprimindo o número de vezes que a letra mais frequente aparece

Como faço para obter a palavra mais frequente em um mapa e é a frequência de ocorrência utilizando Java 8 fluxos correspondente?

Encontre o prefixo mais frequente de length n em Trie

Determinar a capitalização mais frequente de uma palavra em Python

Problema em obter o valor mais frequente em linha em um Dataframe com Pandas

Concorrência Java: O que leva à insegurança na publicação de objetos?

Qual é o caso mais estranho que você já viu em C # ou .NET?

Alguma sugestão de um programa ou pequeno projeto para aprender sobre concorrência em Java?

Descubra qual gênero é mais frequente em cada categoria de idade

Descubra qual gênero é mais frequente em cada categoria de idade

Qual é o limite para o número de membros que você pode ter em um enum java?

Lei de Amdahl em "Concorrência C ++ em Ação"

Qual é a melhor maneira de organizar o código Java, já que você não pode passar por referência?

Encontre o valor de ocorrência menos frequente em sql

Qual elemento é o mais frequente de acordo com uma segunda tabela

Realm de ocorrência mais frequente

Selecione qual argumento você deseja definir quando eles forem mais de um padrão em Ruby

Como encontrar o número mais frequente e sua frequência em uma matriz na faixa L, R de forma mais eficiente?

Selecione a string mais frequente em uma lista, se 'n' strings tiverem a mesma contagem de frequência, então compare em ordem alfabética a primeira letra de cada string

Fillna com o valor mais frequente se ocorrer mais frequente, ou fillna com o valor mais frequente de toda a coluna

Como chamar o método estático, uma vez que você o encontrou no tipo de estrutura

R Text Mining - a palavra mais frequente em string em todo o quadro de dados

Como encontrar a frequência do valor mais frequente (moda) de uma série em polares?

Problema frequente com TypeScript e preferência de importação a exigir

Concorrência Java na Prática “Listagem 7.9. Interrompendo uma tarefa em um encadeamento dedicado. ”. Qual é o objetivo do taskThread.interrupt () agendado?

Qual é a coisa mais legal que você pode fazer em <10 linhas de código simples? Ajude-me a inspirar iniciantes!

Qual convenção de nomenclatura de pacotes você usa para projetos pessoais / de hobby em Java?