- Kezdő fotósok digitális fényképei
- Amazon Kindle
- Milyen billentyűzetet vegyek?
- Borsos árú alumíniumfelni? Nem, egy asztali PC!
- VR topik (Oculus Rift, stb.)
- AMD Navi Radeon™ RX 9xxx sorozat
- AMD K6-III, és minden ami RETRO - Oldschool tuning
- ThinkPad (NEM IdeaPad)
- Milyen belső merevlemezt vegyek?
- HiFi műszaki szemmel - sztereó hangrendszerek
Új hozzászólás Aktív témák
-
vz12
tag
válasz
Tomi_78 #2110 üzenetére
Hello!
A pontos választ nem tudom, de gyors kereséssel az alábbi lehetséges okokat dobta a Google:
If a program gets a segmentation fault (SIGSEGV), it references a memory address outside of the memory available to it.
The most frequent causes for a segmentation fault are:
An array index is outside the declared range.
The name of an array index is misspelled.
The calling routine has a REAL argument, which the called routine has as INTEGER.
An array index is miscalculated.
The calling routine has fewer arguments than required.
A pointer is used before it is defined.Valószínűleg ezek csak példák, tehát lehetséges más ok is, de kiindulási alapnak talán elegendő.
A debugolást tessék megtanulni, nagyon leegyszerűsíti a hibakeresést, a Delphi-ben a beépített debugger nagyon egyszerűen és kiválóan működik, a Lazarus-ban lévő pedig a képek alapján kb. ugyanaz lehet.
Az első G-s találat a "debug in Lazarus"-ra ez, ránéztem, tök jó:
[link]Egyébként ezt a hibát NEM biztos, hogy
lehetségeskönnyű megtalálni, mert ha pl. iterációban, időzített futásban, stb., tehát ha NEM az első ráfutáskor, hanem később "menet közben valamikor egyszercsak" jelentkezik a probléma, a változók változásai miatt, vagy ha a debugolás miatti megállások megváltoztatják a környezeti (idő) feltételeket, akkor bizony rá kell szánni az időt. És neked még azt is be kell határolni, hogy vajon HOVA kellene töréspontot tenni (ahol - még egyszer mondom - lehet hogy az első N db alkalommal akár minden rendben is van, tehát hiába állítod meg ott a programot, csak utána romlik el ugyanott "valamikor"). Először az F8-akat kellene nyomkodni, és ha megvan, hogy miben száll el, akkor (elölről kezdve) ugyanott F8 HELYETT F7-tel kellene OTT mélyebbre menni, ahol 1-gyel mélyebb szinten először szintén F8, utána F7. Amikor már nem lehet mélyebbre menni (F7), akkor megtaláltad a hibapontot, és kiakadás előtt meg kell vizsgálni a változók, objektumok, tömbök, stb. tartalmait akár ezek "watch"-olásával, akár az egér sima elem fölé húzásával, ahogy a fenti videóban is mutatják, és a kiírt értékek alapján NEKED már látnod kellene a problémát.A fentiek alapján MEGELŐZÉSSEL is lehetne kísérletezni, brutál validációkkal (kissé túl erőltetettnek tűnő IF-ezéssel) a tömb indexek és a mutatók/pointerek felhasználását tekintve. A rossz függvény paraméterezést kevéssé tartom valószínű oknak, azt talán "rendesen" is meg tudja mondani a Lazarus, de ki tudja.
Esetleg (de ez csak ötlet) ha képernyő/pálya frissítésével függ össze a hiba, akkor LEHET, hogy a megadott frissítési idő kevés, ezért "összetorlódnak" a feladatok, amit már nem bír elviselni a rendszer, vagyis próbálkozni lehet a frissítés idejének megnövelésével is VAGY a pályaméret csökkentésével VAGY a frissítéskor lefutó kód gyorsításával, amennyiben az még nem optimális.
Új hozzászólás Aktív témák
- Kezdő fotósok digitális fényképei
- sziku69: Fűzzük össze a szavakat :)
- Luck Dragon: Asszociációs játék. :)
- Vicces képek
- Battlefield 6
- Borderlands 4
- Amazon Kindle
- Milyen billentyűzetet vegyek?
- Borsos árú alumíniumfelni? Nem, egy asztali PC!
- Fortnite - Battle Royale & Save the World (PC, XO, PS4, Switch, Mobil)
- További aktív témák...
- Bomba Ár! Lenovo IdeaPad Flex 5 Ryzen 3 5300U I 4GB I 128SSD I 14" FHD Touch I W11 I Cam I Garancia!
- Bomba ár! HP ProBook X360 435 G7 - Ryzen 3/5 I 8GB I 256SSD I 13,3" FHD Touch I W11 I Cam I Gari!
- Bomba ár! Lenovo ThinkPad X13 G1 - AMD Ryzen 5 PRO I 8GB I 256SSD I 13,3" FHD I Cam I W11 I Gari!
- Bomba Ár! Lenovo ThinkPad E14 G2 AMD - Ryzen 5 I 8GB I 256SSD I 14" FHD I HDMI I W11 I Gari
- Bomba ár! Lenovo ThinkPad T14s G1 - i7-10G I 16GB I 512GB SSD I 14" FHD Touch I Cam I W11 I Gari!
- iPhone 14 Pro Max 128GB Space Black -1 ÉV GARANCIA - Kártyafüggetlen, MS3522
- DELL PowerEdge R640 rack szerver - 2xGold 6138 (20c/40t, 2.0/3.7GHz), 64GB RAM,4x1G, H730 1GB, áfás
- Apple iPhone 15 Pro 128GB, Kártyafüggetlen, 1 Év Garanciával
- Független & karcmentes Xiaomi Redmi Note 10 Pro 6GB RAM / 128GB / Onyx Grey
- LG 27GR93U-B - 27" IPS - UHD 4K - 144Hz 1ms - NVIDIA G-Sync - FreeSync Premium - HDR 400
Állásajánlatok
Cég: Laptopműhely Bt.
Város: Budapest
Cég: PCMENTOR SZERVIZ KFT.
Város: Budapest