All pastes #466473 Raw Edit

Unnamed

public c v1 · immutable
·published 2007-05-01 00:17 UTC
rendered paste body
#include <stdio.h>/* structures */		// ma_fonction_recursive s'appelle avec plusieurs paramètres, d'où la création d'un structure contenant ses paramètres	typedef struct parametres_ma_fonction_recursive	{		int a;		int b;		}	parametres_ma_fonction_recursive;/* fonctions */	void ma_fonction_recursive(int a, int b);	void *thread_ma_fonction_recursive(void *arg);	int main(int argc, char** argv)	{		// RASTAFARIII		ma_fonction_recursive(10,20);		return 0;	}		void ma_fonction_recursive(int a, int b)	{		/* init */				static int compteur = 0; // compteur de thread		int max_count = 10; // on lance 10x la fonction		pthread_t mon_thread;		parametres_ma_fonction_recursive parametres; // pour stoquer tous les paramètres						/* des instructions à la con histoire de dire */				if(compteur < max_count)		{			printf("a=%d ; b=%d ; c=%d", a, b, compteur++);		}						/* appel du thread */				// préparation des paramètres :		parametres.a = a++;		parametres.b = b--;				// on fait un thread		pthread_create(&mon_thread, NULL, thread_ma_fonction_recursive, &parametres);	}			// va permettre la conversion des paramètres avant d'appeler la fonction	void *thread_ma_fonction_recursive(void *arg)	{		// on converti l'argument en paramètres de fonction		parametres_ma_fonction_recursive *parametres = (parametres_ma_fonction_recursive*) arg;				int a = parametres->a;		int b = parametres->b;						// et on appelle la fonction dans notre thread		ma_fonction_recursive(a, b);	}