דיבוג אפליקציה המכילה יותר מ- process אחד

zahalul

New member
דיבוג אפליקציה המכילה יותר מ- process אחד

שלום,
האפליקציה שלי כוללת יותר מ- Process אחד.
כאשר אני מדבג, אני מתחבר עם gdb ל- Process הרצוי אולם מכיוון שכל השאר ממשיכים לרוץ אני מקבל מצב שאינו תואם ריצה אמיתית.

למשל, בגלל שה- Process שלי נעצר, ה- Queue של Process אחר מתפוצץ.
כיצד ניתן להגיע למצב בו gdb עוצר את כל ה- Process שאני מעוניין בהם.
כמובן שה- debug יבוצע רק על אחד מהם. בכל פעם שאבצע continue\stop זה יבוצע על כולם.

תודה,
צהלול
 

EndersG

New member
אני מדבג דברים כאלה בעזרת לוגים

יכול להיות שיהיה לך יוץר קל לייצר לוג לכל PID כשבכל שורה יש לך חתימת זמן ואחריה הPID ןאז ההודעה.
אם אתה רוצה להסתכל על תהליך אחד תקרא את הקובץ ואם אתה רוצה להבין מה קרה במערכת בראייה כוללת תנסה משהו כמו :
sort *.log| less

זה יעזור לך להבין גם מה קרה אח"כ אם מישו אחר מריץ את האםליקציה.
 
למעלה