Problema con un array di puntatori da inviare ad un thread

di il
2 risposte

Problema con un array di puntatori da inviare ad un thread

Salve a tutti!

Ho un problema quasi assurdo:

Devo passare un array di puntatori ad un thread perché deve lavorarci, faccio tutto come si deve se non che l'indirizzo del vettore non arriva al thread!

Mi spiego meglio:

il mio è un vettore del tipo
hash_elem *hash_table[10];
dove hash_elem è una struttura.

la struttura che uso per passare gli argomenti al thread è del tipo:
struct main_s
{
    hash_elem **hash_table;
    /*Altri Elementi*/
}
Nella quale inserisco l'indirizzo del vettore. La cosa molto (poco) simpatica è che finché questa struttura non la passo alla pthread_create l'indirizzo di hash_table esiste, mentre quando provo a controllare dentro il thread appena creato il valore di main_args->hash_table è 0.
Tutti gli altri elementi sono perfettamente a posto, puntatori e non, solo questo vettore da problemi. Ho provato anche a convertire l'indirizzo in un long int e a passare quello ma niente, il valore rimane sempre 0. Il fatto è che prima funzionava egregiamente, ora non più..

2 Risposte

Devi accedere o registrarti per scrivere nel forum
2 risposte