Kezdőoldal » Számítástechnika » Programozás » Program Lefagy debugger...

Program Lefagy debugger nélkül, hol a "hiba"?

Figyelt kérdés
Adott egy program, amit lazarus-ban írok, és gdb-t használok (mint a lazarus alapból) a debuggolásra. Namost, ha Lazarus-ból indítom a progit, minden Hawaii Dizsi Napfény, viszont ha a létrehozott exe-t TotalCommander-ből, vagy simán a windówsból indítom, egy pár másodperc után le is fagy, egyszerűen nem válaszol. (a hangja megy tovább, de a program nem válaszol). Mi lehet a külömbség, vagy nem tudom mi. Bármilyen hotfix jó, csak működjön, mert hamarosan be kell adnom a munkámat.

2013. szept. 21. 12:46
 1/7 anonim ***** válasza:

Halvány tipp: a kívülről importált dologokat látja Lazarus nélkül is?


Teszteld le kisebb egységenként, mikortól nem működik az exe.

2013. szept. 21. 15:13
Hasznos számodra ez a válasz?
 2/7 A kérdező kommentje:

Az a helyzet, hogy nem "mikortól" nem fut, hanem egy idő után, amíg nem fagy le, bármit lehet csinálni, csak egyszer gondol egyet, és pukk, meghal. A dolgokat, látja, nem azzal van a baj, mert azokat mind ellenőrzi, mielőtt betöltené, meg amíg nem fagy le, látszik is, hogy mindent megtalált...


Kiegészítés: ha csak a gdb.exe-vel futtatom, azaz így indítom el cmd-ből -> start gdb cucc.exe -ex run

akkor is működik

2013. szept. 21. 15:36
 3/7 anonim ***** válasza:

De azt lehetne tesztelni, hogy melyik rész hal meg egy idő után. (Valszeg triviális dolgokat mondok: ) A GUI fut magában? Zenével? Melyik funkciótól hal meg?


(pastebinre gondolom nem szabad kirakni beadandót.)

2013. szept. 21. 16:01
Hasznos számodra ez a válasz?
 4/7 A kérdező kommentje:

Háth, kiraknám, de csak az uses rész ennyi:


{$IFDEF UNIX}{$IFDEF UseCThreads}

cthreads,

{$ENDIF}{$ENDIF}

Classes, cmem,

{ you can add units after this }

GL, GLU, GLUTe, glMAtrixHelper, glext, freetype,

NewtonImport, Sysutils,

file_routines, Other_Routines, Fizika_routines, Grafika_routines, map_routines,

ui_components,

Lua, Lualib, Lauxlib,

gl3DS, gl3DSMath, Math,

OpenAL, oooal, zgl_joystick, win,

castle_base, castle_components, castle_window, CastleGLImages;


És ezeknek a nagy részébe mind belenyúltam, de szerintem se lehet kitenni.


Igazából, a kép megfagy, és elengedi az egeret, de a háttérben pl. a Fizika megy tovább mert hallani hogy csobbannak a vízben a kockák, a hang is megy tovább, mert csobog a víz, meg a lépéshang is beakadt, azt nem tudom, megy-e a karakter, vagy csak áll, és a hang akad be, de nagy valószínűséggel megy. Én a szövegre tippelek, mert ha azt kiveszem, akkor lásztszólag megy tovább. Most egyenlőre megoldom annyival, hogy leveszek annyi szöveget amannyit lehet, aztán jólvan, remélem működni fog.

2013. szept. 21. 16:54
 5/7 anonim ***** válasza:
100%
Deadlock. A debuggernél éppen úgy esik a threadváltás, hogy nem megy holtpontra, éles futásnál pedig igen. Logolj addig, amíg elő nem jön, hogy melyik szálak várnak egymásra. :)
2013. szept. 21. 17:14
Hasznos számodra ez a válasz?
 6/7 A kérdező kommentje:
Oh, így már mindent értek, látod erre nem jöttem rá (mert nem is tudtam róla) köszönöm, így már tudom, hol a hiba (illetve, majd megtalálom). Köszönöm, örökké hálás leszek :)
2013. szept. 21. 17:35
 7/7 anonim ***** válasza:
Én is belefutottam hasonló hibába (teljesen más környezetben), ott is a szálkezeléssel volt a probléma.
2013. szept. 21. 18:42
Hasznos számodra ez a válasz?

Kapcsolódó kérdések:




Minden jog fenntartva © 2024, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu

A weboldalon megjelenő anyagok nem minősülnek szerkesztői tartalomnak, előzetes ellenőrzésen nem esnek át, az üzemeltető véleményét nem tükrözik.
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!