Pregunta

¿Estoy en lo cierto al decir que .Net Hashtable no está sincronizado mientras que Java Hashtable sí lo está? ¿Y al mismo tiempo, un Java HashMap no está sincronizado y tiene un mejor rendimiento?

Estoy reescribiendo una aplicación Java que hace un uso intensivo de HashMaps en C # y me gustaría usar una HashTable y asegurarme de que el rendimiento sea básicamente equivalente.

¿Fue útil?

Solución

Creo que lo que estás preguntando es si HashMaps en Java y HashTables en C # actúan aproximadamente de la misma manera y tienes mucha razón desde el punto de vista del rendimiento. HashMaps, según recuerdo, no se quejan si inserta claves duplicadas, mientras que HashTable en C # lo hará.

Otros consejos

Por defecto, .NET Hashtables no están sincronizados, pero puede crear un contenedor sincronizado alrededor de uno, así:

Hashtable myHash = Hashtable.Synchronized(new Hashtable());
Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top