Übergeben Sie einen ganzzahligen Wert an pthread_create

Ich möchte einfach den Wert einer Ganzzahl an einen Thread übergeben.

Wie kann ich das machen?

Ich habe es versucht:

    int i;
    pthread_t thread_tid[10];
    for(i=0; i<10; i++)
    {
        pthread_create(&thread_tid[i], NULL, collector, i);
    }

Die Thread-Methode sieht folgendermaßen aus:

    void *collector( void *arg)
    {
        int a = (int) arg;
    ...

Ich erhalte folgende Warnung:

    warning: cast from pointer to integer of different size [-Wpointer-to-int-cast]

Antworten auf die Frage(4)

Ihre Antwort auf die Frage