Работая с потоками и их синхронизацией.
void main (int arcg, char *arcv[])
{
int a=atoi(arcv[1]);
pthread_t wthread[a], rthread[a];
for (int i=0; i<a; i++)
{
pthread_create(&wthread[i], NULL,kidprint, NULL);
pthread_create(&rthread[i], NULL,kidread, (void*) &wthread[i]);
}
for(int b=0; b<a; b++)
{
pthread_join(wthread[b], NULL);
pthread_join(rthread[b], NULL);
}
}В pthread_create файл создается и открывается для записи
FILE *fout;
char fname[20];
sprintf(fname, "%u",a);
fout = fopen (fname, "w");В pthread_create всё записаное в файл читается
FILE *fin;
char fname[20];
sprintf(fname, "%u", *id);
fin = fopen(fname, "r");Вопрос : как в потоке чтения проверить, что в файл записывается что-то ?
