如何从其他c程序调用线程

时间:2016-11-06 15:51:57

标签: c linux pthreads

我有一个程序正在创建两个线程,但所有这些都在一个c程序中完成,这里是代码

#include<pthread.h>
#include<stdio.h>
#include<stdlib.h>

void * thread1()
{
int i=0;
    while(1)
    {

        printf("%d Hello!!\n", i);
        i++;
    }
}

void * thread2()
{
int j;
    while(1)
    {
        printf("%d How are you?\n", j);
        j++;
    }
}

int main()
{
    pthread_t tid1,tid2;
    pthread_create(&tid1, NULL, thread1, NULL);
    pthread_create(&tid2, NULL, thread2, NULL);
    pthread_join(tid1,NULL);
    pthread_join(tid2,NULL);
    return 0;
}

现在如果

void * thread1()
{
int i=0;
    while(1)
    {

        printf("%d Hello!!\n", i);
        i++;
    }
}

在另一个程序中定义,例如mythread1.c

void * thread2()
{
int j;
    while(1)
    {
        printf("%d How are you?\n", j);
        j++;
    }
}

在另一个c程序中定义,例如mythread2.c 那怎么能在我的test.c程序中调用它们

test.c

int main()
{
    pthread_t tid1,tid2;
    pthread_create(&tid1, NULL, thread1, NULL);
    pthread_create(&tid2, NULL, thread2, NULL);
    pthread_join(tid1,NULL);
    pthread_join(tid2,NULL);
    return 0;
}

请指导我使用Linux系统调用有没有办法做到这一点!

0 个答案:

没有答案