linux+c+pthread

Robert Vojta robert na v0jta.net
Středa Srpen 22 13:55:21 CEST 2001


> nezkouseli jste si nekdo hrat pod linuxem s thready z knihovny phread?

Zdravim,
  zkouseli ...

> Jenomze nastaly dva problemy:

  Tech problemu Vam nastalo vice, treba ...

> free ( (thread_param *)param);
> (*((thread_param *)param)->pocit)--;

  nejdriv to uvolnite a pak z te jiz uvolnene struktury pouzijete ukazatel?
... Co treba zamykani pristupu ke sdilenym promennym z threadu? Co treba
veci jako ...

pthread_mutex_t pom_lock = PTHREAD_MUTEX_INITIALIZER;

pthread_mutex_lock(&pom_lock);
pom++;
pthread_mutex_unlock(&pom_lock);
...

  Ono Vam to mozna funguje, ale neni to pravidlem a na veci, na ktere
pristupujete z vice threadu pouzivejte treba mutexy, atp.

  Jinak pokud vytvarite thread, tak se automaticky vytvari ve stavu
PTHREAD_CREATE_JOINABLE a tudiz se po ukonceni neuvolni. Tzn. reseni pro
vas je zmenit ho jiz bezici na DETACHED pomoci pthread_detach pred 
pthread_exit nebo ho jiz rovnou vytvorit v tomto stavu (pthread_attr_init).

  Ale stejne Vam doporucuji si precist vyse uvedeny clanek od Vladi Michla
ohledne linuxu a vlaken, k nalezeni na

          http://www.linux.cz/noviny/1998-0809/clanek11.html

S pozdravem,
                                                            --Robert V0jta

-- 
            _ 
           |-|  __        Robert Vojta (robert-at-v0jta-net)
           |=| [Ll]             http://www.v0jta.net/
           "^" ====`o
------------- další část ---------------
A non-text attachment was scrubbed...
Name: [žádný popis není k dispozici]
Type: application/pgp-signature
Size: 240 bytes
Desc: [žádný popis není k dispozici]
URL: <http://www.linux.cz/pipermail/linux/attachments/20010822/153564dd/attachment.sig>


Další informace o konferenci Linux