[C con Clase] Tabla de hash y concurrencia

Fernando Rodriguez ferrod20 en gmail.com
Mar Abr 14 23:18:10 CEST 2009


Si, cuento un poco más en detalle lo que tengo que hacer:
Una tabla de hash que tiene como clave un string y como valor una
lista de características (una característica es una estructura de
datos bien sencilla, de strings y enteros). Esta lista de
características tiene tamaño variable.
Como los datos son fijos y la tabla no va a crecer ni modificarse, mi
idea es hacer algo así:
Hacer una tabla hash: un array de punteros a una lista de
características (reservando ya la memoria para esto).
La función de hash sería estática, dada una clave (un string),
devuelve una posición en el array: case 'ad' return 4, case 'ae'
return 8, étc.
En la primer llamada, llenar los valores de la tabla, es decir: llenar
todas las listas de caracteristicas con los valores leídos de un
archivo.
En las próximas llamadas solo utilizar la tabla y ya.

Opiniones y sugerencias al respecto serán muuuy bienvenidas.
Desde ya muchas gracias.

El día 14 de abril de 2009 17:13, Programante <programante en gmail.com> escribió:
> Fernando Rodriguez escribió:
>> Gracias Programante por tu respuesta.
>> Creo que crear la tabla antes de compilar para que esté en el segmento
>> de datos estáticos sería una buena opción.
>> Pero: esto como sería? Tipo un arreglo estático? Mi idea es hacer una
>> tabla de hash propia, ya que voy a tener que tunearla para que
>> funcione rápido. Es decir, en algún lado voy a tener una clase
>> tablaDeHash o algo así.
>> Como hago para meter los datos ahí antes de compilar? Es esto posible?
>>
>> Saludos,
>> Fernando
> Para tenerla antes de compilar, estaría en el código. Podrías hacerla a
> mano, pero no parece
> muy recomendable :)
> Yo lo que haría sería un programa que a partir de los datos genere el
> código de la tabla.
>
> Otra opción que se me ocurrió más tarde es que la dll podría generar la
> tabla en un archivo
> que luego mapeen en memoria todas las instancias.
>
>
> _______________________________________________
> Lista de correo Cconclase Cconclase en listas.conclase.net
> http://listas.conclase.net/mailman/listinfo/cconclase_listas.conclase.net
> Bajas: http://listas.conclase.net/index.php?gid=2&mnu=FAQ
>




Más información sobre la lista de distribución Cconclase