|
|
|
|
 线程编译问题求教 - jonghne [ 2005-05-24 16:07 | 1,564 byte(s)]
 Re: 线程编译问题求教 - samguns [ 2005-05-25 09:49 | 42 byte(s)]
|
|
|
|
[Original]
[Print]
[Top]
|
编写一个线程例子,编译除了问题,请指教,谢谢!!
# gcc -O2 -Wall -o thread thread.c
/tmp/ccqMYZoJ.o(.text+0x1b): In function `main':
: undefined reference to `pthread_create'
/tmp/ccqMYZoJ.o(.text+0x4d): In function `main':
: undefined reference to `pthread_create'
collect2: ld returned 1 exit status
代码如下:
#include<stdio.h>
#include<stdlib.h>
#include<pthread.h>
#include<errno.h>
#include<sys/types.h>
#include<unistd.h>
void print_message_function( void *ptr );
int main(void )
{
pthread_t thread1, thread2;
int r;
char *message1 = "Hello";
char *message2 = "World
";
r=pthread_create(&thread1,NULL,(void*)print_message_function, (void*)
message1);
if(r){perror("pthread_create1:");exit(EXIT_FAILURE);}
r=pthread_create(&thread2,NULL,(void*)print_message_function, (void*)
message2);
if(r){perror("pthread_create2:");exit(EXIT_FAILURE);}
for(r=0;r<4;r++)printf("hi,i am %d
",getpid());
exit( 0 ) ;
}
void print_message_function( void *ptr )
{
char *message;
int i=0;
message = (char *) ptr;
for(;i<4;i++)
printf("%s ", message);
}
|
|
|
[Original]
[Print]
[Top]
|
|
|