Introduce interruptible_select
[deliverable/binutils-gdb.git] / gdb / defs.h
index b94df305c8bf871438355050824c04895b1696d4..ad9b259baae7bf31fb344a41758eb753307f5802 100644 (file)
@@ -131,6 +131,11 @@ extern char *debug_file_directory;
    take a long time, and which ought to be interruptible, checks this
    flag using the QUIT macro.
 
+   In addition to setting a flag, the SIGINT handler also marks a
+   select/poll-able file descriptor as read-ready.  That is used by
+   interruptible_select in order to support interrupting blocking I/O
+   in a race-free manner.
+
    These functions use the extension_language_ops API to allow extension
    language(s) and GDB SIGINT handling to coexist seamlessly.  */
 
@@ -159,6 +164,12 @@ extern void maybe_quit (void);
    connection.  */
 #define QUIT maybe_quit ()
 
+/* Set the serial event associated with the quit flag.  */
+extern void quit_serial_event_set (void);
+
+/* Clear the serial event associated with the quit flag.  */
+extern void quit_serial_event_clear (void);
+
 /* * Languages represented in the symbol table and elsewhere.
    This should probably be in language.h, but since enum's can't
    be forward declared to satisfy opaque references before their
This page took 0.029513 seconds and 4 git commands to generate.