Horje
How to pass a struct value to a pthread in c? Code Example
How to pass a struct value to a pthread in c?
//Runnable example
#include <stdio.h>
#include <stdlib.h>
#include <pthread.h>

struct my_Struct{
	int index;
	int value;
};
void* my_Func(void *received_struct){
	struct my_Struct *struct_ptr = (struct my_Struct*) received_struct;
    printf("index: %d  |  value: %d \n", struct_ptr->index, struct_ptr->value);
	//Now use 'struct_ptr->index', 'struct_ptr->value' as you wish
}
int main(){
	struct my_Struct mystruct_1[5];
	
	printf("\nEnter 5 numbers:\n");
	for (int i=0; i<5; i++){
		scanf("%d", &mystruct_1[i].value);
		mystruct_1[i].index = i;
	}
	pthread_t tid[5];
	for(int i=0; i<5; i++){
		pthread_create(&(tid[i]), NULL, my_Func, &mystruct_1[i]);
	}
	for (int i=0; i<5; i++){	
		pthread_join(tid[i], NULL);
	}
}
//To run: gcc [C FILE].c -lpthread -lrt
// ./a.out

//Grepper Profile: https://www.codegrepper.com/app/profile.php?id=9192




C

Related
LINEAR AND BINARY SEARCH Code Example LINEAR AND BINARY SEARCH Code Example
install postgres on linux Code Example install postgres on linux Code Example
vs code turn off formatter Code Example vs code turn off formatter Code Example
keep last n bits Code Example keep last n bits Code Example
input array elements in c Code Example input array elements in c Code Example

Type:
Code Example
Category:
Coding
Sub Category:
Code Example
Uploaded by:
Admin
Views:
10