2つのスレッドを含む関数を実行する必要があります。1つは一方のパイプを読み取り、もう一方は別のパイプに書き込む必要があります。しかし、pthread_createの引数部分に入れなければならない別の構造があるため、パイプをスレッド関数に渡す方法がわかりません。この方法でもう少し明確になったら、コードをいくつか入れます。
void *readFather(Job *job){
write (desc1Pipe[0],job->in, job->size_in);
}
void *writeFather(Job *job){
if ((job->size=read (desc2Pipe[1], job->out, job->max_out) > job->max_out)
kill(job->pidhijo,SIGKILL);
}
これらは私がpthread_createに与える関数です。
これがスレッドの呼び出しです。
pthread_t pid1;
pthread_t pid2;
...
pthread_create(&pid1, NULL, readFather, &job);
pthread_create(&pid2, NULL, writeFather, &job);
私を助けてください、私は私が考えることができるすべてをしました、私はすべてのC関連のものに本当に新しいです。