10.07.2015 Views

Programming Guide - Actian

Programming Guide - Actian

Programming Guide - Actian

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

How You Can Use Break ConditionsTo keep track of the various threads, the Debugger displays a thread identifierwhen appropriate. This identifier has the format:framename:integer_numberframenameIdentifies the starting frame of the threadinteger_numberSpecifies a value that identifies the thread's relative position in thesequence of threads in the application.For example, if a thread identifier is framename:6, this thread is the sixththread opened in the application. The integer_number also makes itpossible to distinguish between threads originating from multipleopenframe statements that open the same frame.The threads are numbered consecutively from the start of the application,beginning with number 1. If you close a thread, its number disappears and isnot reused. This behavior results in breaks in the sequence of thread identifiernumbers as you step through your application.Synchronization of Concurrent ThreadsAlthough you can use the Debugger features to help you synchronizeconcurrent threads (for example, to determine whether frames are receivingthe proper user and database events), the only way to ensure synchronizationis to use the WaitFor method. For more information about this method, see theLanguage Reference <strong>Guide</strong>.When you stop a thread to debug its code, user and database events "pile up"in the event queue of the thread's current frame, and the thread sends no useror database events of its own. This behavior can distort the usual sequence ofevents.How You Can Use Break ConditionsYou can set source breakpoints or breaks for the following conditions:• Events—user, database, or window manager events• Errors—DBMS, data facility, communications, or other specific classes oferrors• Calls to frames and 4GL and 3GL components• Method invocations in user or system classes• Thread startsDebugging Your Application 445

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!