Pergunta

Am I corrigir em dizer que a Net Hashtable não está sincronizada enquanto um Java Hashtable é? E, ao mesmo tempo, um Java HashMap não está sincronizada e tem melhor desempenho?

Estou reescrevendo um aplicativo Java que faz uso pesado de HashMaps em C # e eu gostaria de usar um HashTable e garantir que o desempenho é basicamente equivalente.

Foi útil?

Solução

Eu acho que você está perguntando é se HashMaps em Java e tabelas de hash em C # act em aproximadamente da mesma maneira e você está em grande parte correto do ponto de vista do desempenho. HashMaps Pelo que me lembro não se queixam Se você inserir chaves duplicadas enquanto HashTable em C # vai.

Outras dicas

Por padrão, o .NET Hashtables não são sincronizados, mas você pode criar um wrapper sincronizado em torno de um, assim:

Hashtable myHash = Hashtable.Synchronized(new Hashtable());
Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top