Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > C/C++: Программирование под Unix/Linux > критические секции win->крит. секции *nix


Автор: En_t_end 17.2.2006, 14:16
Есть класс поддерживающий win-критические секции(CRITICAL_SECTION), как наиболее безболезненно адаптировать его к *nix-секциям ? и вообще приведите пример, если можно, показывающий работу *nix секций, если можно...

Автор: bilbobagginz 17.2.2006, 20:36
man:
pthread_mutex_init, pthread_mutex_lock, pthread_mutex_unlock

Код

#include <pthread.h>

pthread_mutext_attr_t my_mx_attr;
pthread_mutex_t my_mutex = PTHREAD_MUTEX_INITIALIZER; /** это макро */

int main(){
/*
фигачим, инициализуем blablabla
*/
  res=pthread_mutex_attr_init(&my_mutex, NULL); /** готовум мютекс */

/*
запускаем потоки 
*/
...
...
exit(EXIT_SUCCESS);
}

потом во всех потоках:
Код

...
....

pthread_mutex_lock(&my_mutex);
/* 
критический участок
*/
pthread_mutex_unlock(&my_mutex);
..
...
...




потом линкуем с pthread:
gcc myprog.c -lpthread -o myprog.exe

Автор: En_t_end 18.2.2006, 07:10
bilbobagginz
tnx

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)