Итак, у меня есть уменьшенная версия программы лифта, которая использует pthreads в c. Каждый поток представляет собой отдельный лифт, который вызывает функцию request()
. Я не уверен, как узнать, какие лифты (1, 2 или 3), которые являются потоками, используют запрос функции. В функции запроса мне нужно напечатать, какой поток использовал его в то время. Извините, если мое объяснение не имеет полного смысла.
void* request(void* abc)
{
int ii;
for(ii = 0; ii < 8; ii++)
{
sleep(1);
printf("REQUEST FROM LIFT COMPLETED\n");
}
}
int main()
{
pthread_t lift1;
pthread_t lift2;
pthread_t lift3;
pthread_create(&lift1, NULL, request, NULL);
pthread_create(&lift2, NULL, request, NULL);
pthread_create(&lift3, NULL, request, NULL);
pthread_join(lift1, NULL);
pthread_join(lift1, NULL);
pthread_join(lift1, NULL);
return 0;
}