X-Git-Url: https://ncurses.scripts.mit.edu/?p=ncurses.git;a=blobdiff_plain;f=doc%2Fhtml%2Fman%2Fcurs_threads.3x.html;h=899037332f44e55bad908877e33968391f332a41;hp=2a2f0fd98a9caec76e66af14e23397f8ca9ad140;hb=e6f4ffe150c7d919792f29a70b4f031cfab5ef06;hpb=ca276baf720e3a44721b9e18955d3f546955c6c8 diff --git a/doc/html/man/curs_threads.3x.html b/doc/html/man/curs_threads.3x.html index 2a2f0fd9..89903733 100644 --- a/doc/html/man/curs_threads.3x.html +++ b/doc/html/man/curs_threads.3x.html @@ -1,7 +1,7 @@ - + @@ -56,80 +56,83 @@
#include <curses.h> - typedef int (*NCURSES_WINDOW_CB)(WINDOW *, void *); type- - def int (*NCURSES_SCREEN_CB)(SCREEN *, void *); + typedef int (*NCURSES_WINDOW_CB)(WINDOW *, void *); + typedef int (*NCURSES_SCREEN_CB)(SCREEN *, void *); + int get_escdelay(void); int set_escdelay(int size); int set_tabsize(int size); - int use_screen(SCREEN *scr, NCURSES_WINDOW_CB func, void + int use_screen(SCREEN *scr, NCURSES_SCREEN_CB func, void *data); - int use_window(WINDOW *win, NCURSES_SCREEN_CB func, void + int use_window(WINDOW *win, NCURSES_WINDOW_CB func, void *data);
- This implementation can be configured to provide rudimen- - tary support for multi-threaded applications. This makes - a different set of libraries, e.g., libncursest since the + This implementation can be configured to provide rudimen- + tary support for multi-threaded applications. This makes + a different set of libraries, e.g., libncursest since the binary interfaces are different. - Rather than modify the interfaces to pass a thread speci- - fier to each function, it adds a few functions which can + Rather than modify the interfaces to pass a thread speci- + fier to each function, it adds a few functions which can be used in any configuration which hide the mutex's needed - to prevent concurrent use of the global variables when + to prevent concurrent use of the global variables when configured for threading. - In addition to forcing access to members of the WINDOW - structure to be via functions (see curs_opaque(3x)), it + In addition to forcing access to members of the WINDOW + structure to be via functions (see curs_opaque(3x)), it makes functions of the common global variables, e.g., COL- - ORS, COLOR_PAIRS, COLS, ESCDELAY, LINES, TABSIZE curscr, - newscr and ttytype. Those variables are maintained as + ORS, COLOR_PAIRS, COLS, ESCDELAY, LINES, TABSIZE curscr, + newscr and ttytype. Those variables are maintained as read-only values, stored in the SCREEN structure. - Even this is not enough to make a thread-safe application - using curses. A multi-threaded application would be ex- - pected to have threads updating separate windows (within + Even this is not enough to make a thread-safe application + using curses. A multi-threaded application would be ex- + pected to have threads updating separate windows (within the same device), or updating on separate screens (on dif- - ferent devices). Also, a few of the global variables are - considered writable by some applications. The functions + ferent devices). Also, a few of the global variables are + considered writable by some applications. The functions described here address these special situations. - The ESCDELAY and TABSIZE global variables are modified by - some applications. To modify them in any configuration, - use the set_escdelay or set_tabsize functions. Other + The ESCDELAY and TABSIZE global variables are modified by + some applications. To modify them in any configuration, + use the set_escdelay or set_tabsize functions. Other global variables are not modifiable. - The use_window and use_screen functions provide coarse + The get_escdelay function returns the value for ESCDELAY. + + The use_window and use_screen functions provide coarse granularity mutexes for their respective WINDOW and SCREEN - parameters, and call a user-supplied function, passing it - a data parameter, and returning the value from the user- + parameters, and call a user-supplied function, passing it + a data parameter, and returning the value from the user- supplied function to the application. USAGE - All of the ncurses library functions assume that the lo- - cale is not altered during operation. In addition, they + All of the ncurses library functions assume that the lo- + cale is not altered during operation. In addition, they use data which is maintained within a hierarchy of scopes. - - global data, e.g., used in the low-level termin- - fo or termcap interfaces. + o global data, e.g., used in the low-level terminfo + or termcap interfaces. - - terminal data, e.g., associated with a call to - set_curterm. The terminal data are initialized - when screens are created. + o terminal data, e.g., associated with a call to + set_curterm. The terminal data are initialized + when screens are created. - - screen data, e.g., associated with a call to - newterm or initscr. + o screen data, e.g., associated with a call to + newterm or initscr. - - window data, e.g., associated with a call to - newwin or subwin. Windows are associated with - screens. Pads are not necessarily associated - with a particular screen. + o window data, e.g., associated with a call to newwin + or subwin. Windows are associated with screens. + Pads are not necessarily associated with a particu- + lar screen. - Most curses applications operate on one or more - windows within a single screen. + Most curses applications operate on one or more + windows within a single screen. - - reentrant, i.e., it uses only the data passed as - parameters. + o reentrant, i.e., it uses only the data passed as + parameters. This table lists the scope of data used for each symbol in the ncurses library when it is configured to support @@ -178,10 +181,10 @@ boolfnames global (readonly) boolnames global (readonly) border window (stdscr) + border_set window (stdscr) box window (stdscr) box_set window (stdscr) - can_change_color terminal cbreak screen chgat window (stdscr) @@ -245,10 +248,10 @@ has_key screen hline window (stdscr) hline_set window (stdscr) + idcok window idlok window immedok window - in_wch window (stdscr) in_wchnstr window (stdscr) in_wchstr window (stdscr) @@ -312,10 +315,10 @@ mvaddstr window (stdscr) mvaddwstr window (stdscr) mvchgat window (stdscr) + mvcur screen mvdelch window (stdscr) mvderwin window (stdscr) - mvget_wch screen (input-operation) mvget_wstr screen (input-operation) mvgetch screen (input-operation) @@ -379,10 +382,10 @@ mvwinsch window mvwinsnstr window mvwinsstr window + mvwinstr window mvwinwstr window mvwprintw window - mvwscanw screen mvwvline window mvwvline_set window @@ -446,10 +449,10 @@ slk_attr_on screen slk_attr_set screen slk_attroff screen + slk_attron screen slk_attrset screen slk_clear screen - slk_color screen slk_init screen slk_label screen @@ -513,10 +516,10 @@ wadd_wchnstr window wadd_wchstr window waddch window + waddchnstr window waddchstr window waddnstr window - waddnwstr window waddstr window waddwstr window @@ -580,10 +583,10 @@ wprintw window wredrawln window wrefresh screen + wresize window locks(windowlist) wscanw screen wscrl window - wsetscrreg window wstandend window wstandout window @@ -608,15 +611,15 @@
- These routines are specific to ncurses. They were not - supported on Version 7, BSD or System V implementations. - It is recommended that any code depending on ncurses ex- + These routines are specific to ncurses. They were not + supported on Version 7, BSD or System V implementations. + It is recommended that any code depending on ncurses ex- tensions be conditioned using NCURSES_VERSION.
- curses(3x), curs_opaque(3x) + curses(3x), curs_opaque(3x), curs_variables(3x).