#include #include void *task1( void *arg ); void *task2( void *arg ); main( int argc, char *argv[] ) { pthread_t thread1; pthread_t thread2; int arg1 = 1; int arg2 = 2; pthread_create( &thread1, NULL, ( void * ) task1, ( void * ) &arg1 ); pthread_create( &thread2, NULL, ( void * ) task2, ( void * ) &arg2 ); pthread_join( thread1, NULL ); pthread_join( thread2, NULL ); return; } void *task1( void *arg ) { int i; for ( i = 0; i < 5; i++ ) { printf( "Task 1\n" ); sched_yield(); } return; } void *task2( void *arg ) { int i; for ( i = 0; i < 5; i++ ) { printf( "Task 2\n" ); sched_yield(); } return; }