Okno dialogowe debugowania zmienia kolor na czarny i nie odpowiada w systemie Linux

0

Ilekroć próbuję wyjść SimVision (narzędzie do przeglądania przebiegów, część Cadence), pojawia się okno dialogowe z prośbą o potwierdzenie, że chce wyjść z aplikacji.

Czasami okno dialogowe przestaje odpowiadać, a jego zawartość staje się czarna:

screenshot.

Używam Scientific Linux (x86_64). Spodziewam się, że niekoniecznie jest to wina aplikacji, ale coś pójdzie nie tak na lokalnej maszynie. Jakie są skuteczne sposoby debugowania tego?

ibriq
źródło

Odpowiedzi:

1

X działa wysyłając tzw Zdarzenie Expose do aplikacji, gdy muszą przerysować, opcjonalnie najpierw wyczyścić tło (czyniąc je czarnym).

Więc jeśli aplikacja pozostaje czarna, a aplikacja nie odpowiada, to większość oczywistą rzeczą do sprawdzenia jest coś w aplikacji. Jest możliwe, że aplikacja czeka na coś innego i nie ma wystarczającej liczby wątków, aby móc reagować podczas oczekiwania.

Pierwszą rzeczą do zrobienia jest ps i spójrz na stan aplikacji i jej podprocesów / wątków. Drugą rzeczą jest zdobycie źródła, jeśli to możliwe, dołącz debugger jak gdb i wymyśl, gdzie się zawiesza i dlaczego.

Jego bardzo mało prawdopodobne, że „coś pójdzie nie tak na lokalnej maszynie”. Twoja lokalna maszyna może być skonfigurowana inaczej niż oczekuje aplikacja, co może spowodować zawieszenie, ale to jest jej rozmiar.

dirkt
źródło