Posted By: Korusef (zmatek nad zmatek) on 'CZprogram' Title: IPC semafory Date: Wed Feb 15 20:39:27 2006 Ahoj, narazil jsem na drobny zadrhel se semafory pri forkovani. Mam dva semafory s1,s2, a nasledujici prubeh programu: s1.lock(); s2.lock(); fork() ---> dite | | | | | s1.unlock() rodic | | s2.lock() | s2.unlock() s1.lock() | s1.unlock() | | exit() | | ===== s2.ulock() wait() ===== | | exit() Tj. rodic ceka na uvolneni s1, ktere provadi potomek, ten naopak ceka se svym ukoncenim, nez rodic uvolni s2. Tato konfigurace probehne v poradku. Problem je, kdyz zkusim konfigucaci, kde cast ==== v rodici je pred s1.lock(),s1.unlock(). Tj. dite uvolni s1 a ceka nez rodic uvolni s2, pred opetovnym uzamcenim s1 v rodici se ceka na konec ditete. V teto konfiguraci uvaznu pri tom opetovnem zamykani s1. Netusim co tam delam spatne. Korusef[ Libor Dener] (-: CauCau :-)