Gunsmoker de manipulare a erorilor în blog - termeni și definiții

Memorie scurgere-a se vedea. Memorie scurtă.

Nerecunoscută excepție - vedeți excepția Incorporată.

Scurgerea resurselor - a se vedea scurgerea resurselor.

Excepție software - vedeți excepția Software.

Excepție neafectată - a se vedea excepția nefolosită.

Unitate - un fișier .pas în Delphi.

O excepție hardware - (vezi și: Excepție) este o excepție. care este excitat de hardware-ul calculatorului. Acest tip de Excepții este asincron - aceste Excepții pot apărea oriunde și oricând. Excepția binecunoscută privind violarea accesului (EAccessViolation) este un exemplu de excepție de hardware. În Delphi, toate excepțiile de la Hardware sunt moștenitorii EExternalException.

Bug - (a se vedea și: Eroare) este un defect al programului. Acesta este un termen general utilizat pentru a descrie erori de defect, defecțiune sau o problemă în program sau sistem, care să conducă la rezultate incorecte sau neașteptate, sau poate duce la un comportament neașteptat. Cele mai multe bug-uri provin din erorile și greșelile pe care le fac oamenii în codul programului sau al designului său, dar unele dintre ele sunt cauzate de compilator. Un program care conține un număr mare de bug-uri. și / sau bug-uri. care interferează serios cu funcționalitatea sa, se numește "bazhnoy". Rapoartele detaliate despre problemele din program sunt de obicei numite rapoarte de erori, rapoarte de erori, rapoarte de probleme, rapoarte de probleme, solicitări de modificare și așa mai departe. Mulți oameni confundă Bugs cu Excepții și invers, dar acest lucru este în mod evident greșit, deoarece Leakage este, de asemenea, Bug. Și nu toate excepțiile sunt Bahamas reale în cod (de exemplu, excepția este ridicată în cazul în care nu puteți deschide un fișier, ca regulă, nu este un Bug).

Raport de eroare - (a se vedea și: Excepție neimplicată) este un raport despre o posibilă eroare în aplicație. De obicei, acesta conține informații despre o excepție sau o scurgere. Un raport de eroare include, de obicei, unul sau mai multe stive de apel și unele informații despre sistem, aplicație și mediul de lucru. Rapoartele de eroare sunt stocate în fișiere. Adesea, un singur fișier poate stoca mai multe Raporte Bug.

Închiderea reciprocă este o situație în care două sau mai multe fire se așteaptă la nesfârșit una pentru cealaltă. Astfel de situații sunt bug-uri în apendice. Acesta este un caz special de agățare.

O excepție imbricată este o excepție. Operatorul de excepție care a avut loc în timpul funcționării (în interior). Acesta este de obicei numit numai dacă există o relație între cele două excepții.

Introducere - pot avea semnificații diferite. De obicei, acest termen se referă fie la instalarea Hook. sau cu privire la procesul de adăugare a informațiilor de depanare la modulul executabil.

Hanging-ul este o situație în care aplicația nu mai răspunde (reacționează) la stimuli externi, cum ar fi intrarea utilizatorilor sau interacțiunile IPC. Acesta poate fi un bug în aplicație, dar nu întotdeauna. Dacă această stare durează pe termen nelimitat, atunci acesta este un Bug fără echivoc. Un caz special de agățare este o blocare reciprocă.

Excepție - o modalitate de a întrerupe executarea normală a programului și a rula un cod pentru prelucrare apărut situații de urgență (excludere). În unele surse, excepțiile se numesc "situații speciale", "situații extraordinare" sau "situații excepționale", însă termenul "excepție" este încă mai stabil. O excepție poate fi considerată ca un eveniment care întrerupe execuția normală a programului. Deși a introdus inițial pentru excepții de procesare de text în cazul în care situații (false), dar ele sunt, de asemenea, mijloace convenabile întrerupe execuție normală de cod (de exemplu - „Cancel“ buton este apăsat de către utilizator). De asemenea, excepțiile permit prelucrarea uniformă a erorilor software și hardware. Procesarea implică scrierea unui cod de curățare și / sau a unui cod de corectare a erorilor. În plus, o excepție este și un obiect informativ care descrie o astfel de întrerupere a muncii. Procesul de apariție a unei excepții este denumit de obicei "ridicarea unei excepții" sau "excepția aruncării" ("creșterea excepției" sau "excepția de aruncare"). Excepțiile sunt procesate sau neprelucrate. De asemenea, excepțiile sunt împărțite în Hardware sau Software.

Modulul executabil - pe scurt, este .exe. dll sau .bpl. În general, acesta este proiectul tău compilat. Acesta este fișierul care conține codul executabil și care poate fi încărcat pentru a executa codul.

Fișier executabil - consultați modul executabil.

Blocaj - vezi interblocarea.

Modulul are două sensuri. Acesta este fie un modul executabil. sau unitate. Ce se întâmplă, de obicei, trebuie să înțelegem contextul.

O excepție nefolosită - (vezi și: Excepție) poate avea mai multe valori diferite. De obicei, o excepție nefolosită este orice Excludere. care nu este o excepție procesată. Ie Excepția a venit în lanțul de manipulare și nu a fost manipulat de nimeni - până la rădăcina handler sistemului de operare. Astfel de excepții înseamnă moartea imediată ("crash") a aplicației dvs. - cu excepția cazului în care Hook este instalat în această situație. Deci, acesta este înțelesul obișnuit al cuvintelor "excepție neimpusă" în aplicațiile standard. Cu toate acestea, atunci când se utilizează o excepție în aplicație. O excepție nefolosită are un al doilea sens - acum înseamnă de obicei excepție. care nu este tratată de administratorii dvs. de excepție. dar capturat de Traceor of Exceptions (fie de către Handler-ul de Excepție sau de Hooks). Chiar dacă, din punct de vedere tehnic, această excepție este o excepție manipulată - se numește excepție nefolosită. Pentru a sublinia diferența față de celelalte excepții. În acest caz, pentru a indica semnificația originală a excepției nefolosite. ei spun de obicei "aceasta este o excepție neprelucrată". Așa cum ați putea ghici, acest caz este destul de rar în aplicație, cu excepția Traceer. În plus, excepție, uneori, în al doilea sens unhandled său este utilizat în cazul aplicațiilor Delphi convenționale (fără excepții Tracer), implicând orice excepție, ajungând la un manipulator de excepție la nivel mondial în obiectul Application.

Excepția procesată - (vezi și: Excepție) este o excepție. care a fost procesat de către Excepție Handler în procesul de Excepție de manipulare.

manipulare excepție - (a se vedea, de asemenea, :. excepție) se înțelege în general, prin urmare, procesul de manipulare excepție, care poate include operațiuni cum ar fi logarea (a se vedea raportul de eroare.), afișând un mesaj de eroare, operațiile de rollback și așa mai departe. Acest proces este efectuat de unul sau mai mulți manipulatori de excepție (în caz de supraexcitare). Obiectul Excepție este distrus după terminarea procesării excepțiilor. Consultați, de asemenea, Excepție vindecată și excepție nefolosită.

Instrumentul de tratare a excepțiilor - (a se vedea și: Excepție) este codul care primește control când se declanșează Excitarea. De obicei, el nu este un cârlig. Handlerul de excepție efectuează o încercare în cele din urmă sau o excepție.

Raport de eroare - consultați Raportul de eroare.

Eroare - (vezi și: Excepție), vezi Bug. Mulți oameni confundă excepțiile cu greșelile și viceversa, dar acest lucru este în mod evident incorect, deoarece scurgerea este, de asemenea, un Bug. Și nu toate excepțiile sunt erori reale în cod (de exemplu, excluderea, dacă este imposibil să deschideți un fișier, de obicei nu este un Bug). Cu toate acestea, uneori, eroarea poate fi folosită ca sinonim pentru cuvântul Excepție. dar nu la cuvântul Bag. Prin urmare, este de obicei cel mai bine să evitați cuvântul "Eroare ca valoare multiplă". Este preferabil să utilizați cuvintele Excepție. Scurgere. Bagh. eroare tipografică. Acest lucru se poate observa în special în fraza "apare o eroare". O eroare în codul programului nu poate "apărea" sau "nu se produce". Este fie acolo, fie nu există (cu condiția ca codul programului să rămână neschimbat). Este mai corect să spunem: "apare un mesaj", "afișează rezultatul greșit", "refuzat accesul" sau cumva.

Excepție de software - (a se vedea și: Excepție) este o excepție. excitat de comanda codului de program. Astfel de excepții sunt sincrone - ele apar numai în anumite locuri și la un anumit moment - și anume: când codul de program comandă inițierea unei excepții. Un exemplu de excepție de software este, de exemplu, un EStreamError. Acesta este cel mai frecvent tip de Excepții în aplicații.

Trace excepție - (a se vedea, de asemenea: Excepție) este un utilitar sau un cod care stabilește Hookey și interceptează excluderi de excitație. permițându-vă să creați un raport Bug privind excepțiile nefolosite. Adesea, urmele de excludere au funcționalități suplimentare, cum ar fi colectarea de informații, capabilități de depanare, capturarea Leaks și așa mai departe. Celebrele tracere de excepție din Delphi sunt EurekaLog și madExcept. JCL (JclDebug.pas + JclHookExcept.pas) este adesea folosit pentru a construi propriile excepții de la Traceor.

Setarea cârligului - (vezi și: Cârlig) este procesul de instalare a cârligului. Uneori numită Injectare, mai ales când codul subliniat este interceptat.

Scurgeri de memorie - (vezi și: Scurgeri) este un tip de scurgere. Când o aplicație alocă, dar nu eliberează memoria.

Scurgerea resurselor - (vezi și: Scurgeri) Orice scurgere. nu o scurgere de memorie.

Scurgerile sunt un fel de Bug în aplicație. Apare atunci când o aplicație consumă o resursă, dar nu o eliberează. Dacă această resursă este o memorie (de obicei: virtuală), atunci scurgerea se numește o pierdere de memorie.

Un cârlig este un cod care se numește în locul sau înaintea unui alt cod - la care este furnizat cârligul. Un caz special al lui Hook este cel care face obișnuință. De obicei, dacă există un mod standard documentat pentru a stabili un apel pentru codul dvs. pentru un eveniment, acest cod este numit un manipulator de evenimente. Dacă nu există o astfel de metodă, atunci codul se numește Cârlig.