Tcl_BackgroundError − report Tcl error that occurred in background processing


#include <tcl.h>



Tcl_Interp *interp (in)

Interpreter in which the error occurred.



This procedure is typically invoked when a Tcl error occurs during “background processing” such as executing an event handler. When such an error occurs, the error condition is reported to Tcl or to a widget or some other C code, and there is not usually any obvious way for that code to report the error to the user. In these cases the code calls Tcl_BackgroundError with an interp argument identifying the interpreter in which the error occurred. At the time Tcl_BackgroundError is invoked, the interpreter’s result is expected to contain an error message. Tcl_BackgroundError will invoke the command registered in that interpreter to handle background errors by the interp bgerror command. The registered handler command is meant to report the error in an application-specific fashion. The handler command receives two arguments, the result of the interp, and the return options of the interp at the time the error occurred. If the application registers no handler command, the default handler command will attempt to call bgerror to report the error. If an error condition arises while invoking the handler command, then Tcl_BackgroundError reports the error itself by printing a message on the standard error file.

Tcl_BackgroundError does not invoke the handler command immediately because this could potentially interfere with scripts that are in process at the time the error occurred. Instead, it invokes the handler command later as an idle callback.

It is possible for many background errors to accumulate before the handler command is invoked. When this happens, each of the errors is processed in order. However, if the handle command returns a break exception, then all remaining error reports for the interpreter are skipped.


background, bgerror, error, interp

More Linux Commands

visudo(8) - edit the sudoers file - Linux manual page.......
visudo edits the sudoers file in a safe fashion, analogous to vipw(8). visudo locks the sudoers file against multiple simultaneous edits, provides basic sanity

xine(1) a free video player (Commands - Linux man page).....
This manual page documents briefly the xine audio/video player. xine plays MPEG system (audio and video) streams, mpeg elementary streams (e.g. .mp3 or .mpv fil

getnstr(3ncurses) - accept character strings from curses ter
The function getstr is equivalent to a series of calls to getch, until a newline or carriage return is received (the terminating character is not included in th

noqiflush(3ncurses) - curses input options - Linux man page
Normally, the tty driver buffers typed characters until a newline or carriage return is typed. The cbreak routine disables line buffering and erase/kill charact

systemd-hibernate.service(8) System sleep state logic.......
systemd-suspend.service is a system service that is pulled in by and is responsible for the actual system suspend. Similarly, systemd-hibernate.s

TIFFWriteRawStrip(3tiff) - write a strip of raw data to an o
Append size bytes of raw data to the specified strip. NOTES The strip number must be valid according to the current settings of the ImageLength and RowsPerStrip

gnutls_certificate_set_x509_crl(3) - API function (ManPage)
gnutls_certificate_set_x509_crl.3 - This function adds the trusted CRLs in order to verify client or server certificates. In case of a client this is not requir

mvwprintw(3ncurses) - print formatted output in curses windo
mvwprintw.3ncurses - The printw, wprintw, mvprintw and mvwprintw routines are analogous to printf [see printf(3)]. In effect, the string that would be output by

gnutls_x509_crt_get_pk_algorithm(3) - API function (ManPage)
This function will return the public key algorithm of an X.509 certificate. If bits is non null, it should have enough size to hold the parameters size in bits.

XkbGetIndicatorChanges(3) - Updates a local copy of the keyb
XkbGetIndicatorChanges.3 - Whenever an indicator changes state, the server sends XkbIndicatorStateNotify events to all interested clients. Similarly, whenever a

winemine(1) - Wine Minesweeper game - Linux manual page.....
winemine is the Wine Minesweeper game. The object of the game is to try to find all the hidden mines by uncovering the tiles to see how many mines each tile is

audit_set_enabled(3) - Enable or disable auditing (ManPage)
audit_set_enabled is used to control whether or not the audit system is active. When the audit system is enabled (enabled set to 1), every syscall will pass thr

We can't live, work or learn in freedom unless the software we use is free.