[OSy] Vlakna v Kaliste

Szabolcs Gróf grof.szabolcs at gmail.com
Mon Oct 27 18:55:33 CET 2008


Zdravim vsichni!

Mel bych (mozno, ze hloupy) dotaz, tykajici se Kalisto:
Co se stane s vlaknem (v Kaliste), kdyz se vrati funkce, ktera zavolal?

Ja totiz uz druhy den ladim neco v nasim OS, a kvuli toho jsem
vyzkousel nasledujici vec v Kaliste:

V tom funkce example (v example.c) jsem vymazal radky

activity (" [Thread 0] ", '-');

msim_halt ();

Ja jsem si myslel, ze takhle thread 0 nebude delat nic, jenom vytvori
thread 1 a thread 2, pak se hned skonci, a budou bezet vlakny 1 a 2...
No, nestalo se to tak, ale po inicializaci mi vypsal:

Assertion failed: item->list == list

a cely se spadl.
Ten assertion je v list.c v list_remove(), ale ona, ta funkce, se v
Kaliste pouziva jenom ve funkci disabled() a list_rotate() ... cili
vubec nemam tuseni, proc bych takovy error mohl dostat po navratu z
funkci vlakna.
Nenarazil nahodou na neco podobneho jeste nekdo jiny?

Predem dekuju za odpoved,
s pozdravem

Szabolcs Grof




More information about the NSWI004 mailing list