Нужен пример реализации многопоточности на C под Debian(GCC v4.4.X)
Желательно очень простой и без лишнего кода например умножение матриц
#include <pthread.h> с использование данной библиотеки
int Msize = 200; размер матрицы
int Pcount = 4; количество потоков
C[Msize][Msize] = A[Msize][Msize] * B[Msize][Msize]
Ну примерно так!
Ну или просто пример создания потоком с заданным числом потоков!!!
Заранее спасибо! ;)
LinuxForum.Fans
Нужен пример реализации многопоточности на C под Debian(GCC v4.4.X)
Автор: webber
5 сообщений
2357 просмотров
text
#include <pthread.h>
#include <stdio.h>
void *my_funct (void *arg) {
int loc_x = *(int*)arg;
printf ("i'm thread");
}
int main(int argc, char *argv[])
{
int x;
pthread_t thread;
for (int i=0; i< 3; i++)
pthread_create(&thread, NULL, my_funct, &x);
}
Создание потоков, в самом простом виде. Но я могу ошибаться в передачи параметра 'х' потоку
А можно пример компиляции а то там вить вроде чет нужно указать для pthread.h какие именно ключи ?
text
joy@debian:~/dev$ gcc -Wall -std=c99 -o ee ee.c
ee.c: In function ‘my_funct’:
ee.c:5: warning: unused variable ‘loc_x’
ee.c:7: warning: control reaches end of non-void function
/tmp/ccssMBpI.o: In function `main':
ee.c:(.text+0x5a): undefined reference to `pthread_create'
collect2: ld returned 1 exit status
joy@debian:~/dev$пользуйтесь тегом [сode] или [сonsole].
Компилировал в qt4.7 все хорошо. Прочитайте эту статейку может помочь
http://rus-linux.net/nlib.php?name=/MyLDP/BOOKS/Linux-tools/10/ltfwp-10-11.html
joy@debian:~/dev$ gcc -Wall -std=c99 -o ee ee.c
-lpthread добавь...
Войдите или зарегистрируйтесь, чтобы ответить.