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