Ho usato solo un pò i thread in windows, e questi permettevano soltanto funzioni che avessero come argomento un void*
Ciò non è limitativo poichè, proprio come hai detto tu, tramite una struttura puoi contenere tutti i dati che ti servono.