Spec-Zone .ru
спецификации, руководства, описания, API
Spec-Zone .ru
спецификации, руководства, описания, API
Библиотека разработчика Mac Разработчик
Поиск

 

Эта страница руководства является частью версии 5.0 Инструментов XCode

Получить эти инструменты:

Если Вы выполняете версию Инструментов XCode кроме 5,0, просматриваете документацию локально:

Читать страницы руководства

Страницы руководства предназначаются как справочник для людей, уже понимающих технологию.

  • Чтобы изучить, как руководство организовано или узнать о синтаксисе команды, прочитайте страницу руководства для страниц справочника (5).

  • Для получения дополнительной информации об этой технологии, ищите другую документацию в Библиотеке Разработчика Apple.

  • Для получения общей информации о записи сценариев оболочки, считайте Shell, Пишущий сценарий Учебника для начинающих.



curs_threads (3X)                                                                            curs_threads (3X)



NAME
       use_screen, use_window - curses thread support

SYNOPSIS
       #include <curses.h>

       typedef  int  (*NCURSES_WINDOW_CB)(WINDOW *, void *); typedef int (*NCURSES_SCREEN_CB)(SCREEN *, void
       *);
       int set_escdelay(int size);
       int set_tabsize(int size);
       int use_screen(SCREEN *scr, NCURSES_WINDOW_CB func, void *data);
       int use_window(WINDOW *win, NCURSES_SCREEN_CB func, void *data);

DESCRIPTION
       This implementation can be configured to provide rudimentary 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 specifier to each function, it adds  a  few  func-tions functions
       tions  which can be used in any configuration which hide the mutex's needed 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 makes functions of the common global variables, e.g., COLORS, 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 expected to have threads updating separate windows (within the same device), or updating  on
       separate screens (on different 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 global variables are not modifi-able. modifiable.
       able.

       The use_window and use_screen functions provide coarse granularity mutexes for their respective  WIN-DOW WINDOW
       DOW  and  SCREEN  parameters, and call a user-supplied function, passing it a data parameter, and re-turning returning
       turning the value from the user-supplied function to the application.

   USAGE
       All of the ncurses library functions assume that the locale is not altered during operation.  In  ad-dition, addition,
       dition, they use data which is maintained within a hierarchy of scopes.

              -  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 initial-ized initialized
                 ized when screens are created.

              -  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.

                 Most curses applications operate on one or more windows within a single screen.

              -  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 threading:



                           Symbol                  Scope
                           -------------------------------------------------------------BC ------------------------------------------------------------BC
                           BC                      global
                           COLORS                  screen (readonly)
                           COLOR_PAIR              reentrant
                           COLOR_PAIRS             screen (readonly)
                           COLS                    screen (readonly)
                           ESCDELAY                screen (readonly, see set_escdelay)
                           LINES                   screen (readonly)
                           PAIR_NUMBER             reentrant
                           PC                      global
                           SP                      global
                           TABSIZE                 screen (readonly)
                           UP                      global
                           acs_map                 screen (readonly)
                           add_wch                 window (stdscr)
                           add_wchnstr             window (stdscr)
                           add_wchstr              window (stdscr)
                           addch                   window (stdscr)
                           addchnstr               window (stdscr)
                           addchstr                window (stdscr)
                           addnstr                 window (stdscr)
                           addnwstr                window (stdscr)
                           addstr                  window (stdscr)
                           addwstr                 window (stdscr)
                           assume_default_colors   screen
                           attr_get                window (stdscr)
                           attr_off                window (stdscr)
                           attr_on                 window (stdscr)
                           attr_set                window (stdscr)
                           attroff                 window (stdscr)
                           attron                  window (stdscr)
                           attrset                 window (stdscr)
                           baudrate                screen
                           beep                    screen
                           bkgd                    window (stdscr)
                           bkgdset                 window (stdscr)
                           bkgrnd                  window (stdscr)
                           bkgrndset               window (stdscr)
                           boolcodes               global (readonly)
                           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)
                           clear                   window (stdscr)
                           clearok                 window
                           clrtobot                window (stdscr)
                           clrtoeol                window (stdscr)
                           color_content           screen
                           color_set               window (stdscr)
                           copywin                 window locks(source, target)
                           cur_term                terminal
                           curs_set                screen
                           curscr                  screen (readonly)
                           curses_version          global (readonly)
                           def_prog_mode           terminal
                           def_shell_mode          terminal
                           define_key              screen
                           del_curterm             screen
                           delay_output            screen

                           delch                   window (stdscr)
                           deleteln                window (stdscr)
                           delscreen               global locks(screenlist, screen)
                           delwin                  global locks(windowlist)
                           derwin                  screen
                           doupdate                screen
                           dupwin                  screen locks(window)
                           echo                    screen
                           echo_wchar              window (stdscr)
                           echochar                window (stdscr)
                           endwin                  screen
                           erase                   window (stdscr)
                           erasechar               window (stdscr)
                           erasewchar              window (stdscr)
                           filter                  global
                           flash                   terminal
                           flushinp                screen
                           get_wch                 screen (input-operation)
                           get_wstr                screen (input-operation)
                           getattrs                window
                           getbegx                 window
                           getbegy                 window
                           getbkgd                 window
                           getbkgrnd               window
                           getcchar                reentrant
                           getch                   screen (input-operation)
                           getcurx                 window
                           getcury                 window
                           getmaxx                 window
                           getmaxy                 window
                           getmouse                screen (input-operation)
                           getn_wstr               screen (input-operation)
                           getnstr                 screen (input-operation)
                           getparx                 window
                           getpary                 window
                           getstr                  screen (input-operation)
                           getwin                  screen (input-operation)
                           halfdelay               screen
                           has_colors              terminal
                           has_ic                  terminal
                           has_il                  terminal
                           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)
                           inch                    window (stdscr)
                           inchnstr                window (stdscr)
                           inchstr                 window (stdscr)
                           init_color              screen
                           init_pair               screen
                           initscr                 global locks(screenlist)
                           innstr                  window (stdscr)
                           innwstr                 window (stdscr)
                           ins_nwstr               window (stdscr)
                           ins_wch                 window (stdscr)
                           ins_wstr                window (stdscr)
                           insch                   window (stdscr)
                           insdelln                window (stdscr)
                           insertln                window (stdscr)
                           insnstr                 window (stdscr)

                           insstr                  window (stdscr)
                           instr                   window (stdscr)
                           intrflush               terminal
                           inwstr                  window (stdscr)
                           is_cleared              window
                           is_idcok                window
                           is_idlok                window
                           is_immedok              window
                           is_keypad               window
                           is_leaveok              window
                           is_linetouched          window
                           is_nodelay              window
                           is_notimeout            window
                           is_scrollok             window
                           is_syncok               window
                           is_term_resized         terminal
                           is_wintouched           window
                           isendwin                screen
                           key_defined             screen
                           key_name                global (static data)
                           keybound                screen
                           keyname                 global (static data)
                           keyok                   screen
                           keypad                  window
                           killchar                terminal
                           killwchar               terminal
                           leaveok                 window
                           longname                screen
                           mcprint                 terminal
                           meta                    screen
                           mouse_trafo             window (stdscr)
                           mouseinterval           screen
                           mousemask               screen
                           move                    window (stdscr)
                           mvadd_wch               window (stdscr)
                           mvadd_wchnstr           window (stdscr)
                           mvadd_wchstr            window (stdscr)
                           mvaddch                 window (stdscr)
                           mvaddchnstr             window (stdscr)
                           mvaddchstr              window (stdscr)
                           mvaddnstr               window (stdscr)
                           mvaddnwstr              window (stdscr)
                           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)
                           mvgetn_wstr             screen (input-operation)
                           mvgetnstr               screen (input-operation)
                           mvgetstr                screen (input-operation)
                           mvhline                 window (stdscr)
                           mvhline_set             window (stdscr)
                           mvin_wch                window (stdscr)
                           mvin_wchnstr            window (stdscr)
                           mvin_wchstr             window (stdscr)
                           mvinch                  window (stdscr)
                           mvinchnstr              window (stdscr)
                           mvinchstr               window (stdscr)
                           mvinnstr                window (stdscr)
                           mvinnwstr               window (stdscr)
                           mvins_nwstr             window (stdscr)

                           mvins_wch               window (stdscr)
                           mvins_wstr              window (stdscr)
                           mvinsch                 window (stdscr)
                           mvinsnstr               window (stdscr)
                           mvinsstr                window (stdscr)
                           mvinstr                 window (stdscr)
                           mvinwstr                window (stdscr)
                           mvprintw                window (stdscr)
                           mvscanw                 screen
                           mvvline                 window (stdscr)
                           mvvline_set             window (stdscr)
                           mvwadd_wch              window
                           mvwadd_wchnstr          window
                           mvwadd_wchstr           window
                           mvwaddch                window
                           mvwaddchnstr            window
                           mvwaddchstr             window
                           mvwaddnstr              window
                           mvwaddnwstr             window
                           mvwaddstr               window
                           mvwaddwstr              window
                           mvwchgat                window
                           mvwdelch                window
                           mvwget_wch              screen (input-operation)
                           mvwget_wstr             screen (input-operation)
                           mvwgetch                screen (input-operation)
                           mvwgetn_wstr            screen (input-operation)
                           mvwgetnstr              screen (input-operation)
                           mvwgetstr               screen (input-operation)
                           mvwhline                window
                           mvwhline_set            window
                           mvwin                   window
                           mvwin_wch               window
                           mvwin_wchnstr           window
                           mvwin_wchstr            window
                           mvwinch                 window
                           mvwinchnstr             window
                           mvwinchstr              window
                           mvwinnstr               window
                           mvwinnwstr              window
                           mvwins_nwstr            window
                           mvwins_wch              window
                           mvwins_wstr             window
                           mvwinsch                window
                           mvwinsnstr              window
                           mvwinsstr               window
                           mvwinstr                window
                           mvwinwstr               window
                           mvwprintw               window
                           mvwscanw                screen
                           mvwvline                window
                           mvwvline_set            window
                           napms                   reentrant
                           newpad                  global locks(windowlist)
                           newscr                  screen (readonly)
                           newterm                 global locks(screenlist)
                           newwin                  global locks(windowlist)
                           nl                      screen
                           nocbreak                screen
                           nodelay                 window
                           noecho                  screen
                           nofilter                global
                           nonl                    screen
                           noqiflush               terminal
                           noraw                   screen

                           notimeout               window
                           numcodes                global (readonly)
                           numfnames               global (readonly)
                           numnames                global (readonly)
                           ospeed                  global
                           overlay                 window locks(source, target)
                           overwrite               window locks(source, target)
                           pair_content            screen
                           pecho_wchar             screen
                           pechochar               screen
                           pnoutrefresh            screen
                           prefresh                screen
                           printw                  window
                           putp                    global
                           putwin                  window
                           qiflush                 terminal
                           raw                     screen
                           redrawwin               window
                           refresh                 screen
                           reset_prog_mode         screen
                           reset_shell_mode        screen
                           resetty                 terminal
                           resize_term             screen locks(windowlist)
                           resizeterm              screen
                           restartterm             screen
                           ripoffline              global (static data)
                           savetty                 terminal
                           scanw                   screen
                           scr_dump                screen
                           scr_init                screen
                           scr_restore             screen
                           scr_set                 screen
                           scrl                    window (stdscr)
                           scroll                  window
                           scrollok                window
                           set_curterm             screen
                           set_escdelay            screen
                           set_tabsize             screen
                           set_term                global locks(screenlist, screen)
                           setcchar                reentrant
                           setscrreg               window (stdscr)
                           setupterm               global
                           slk_attr                screen
                           slk_attr_off            screen
                           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
                           slk_noutrefresh         screen
                           slk_refresh             screen
                           slk_restore             screen
                           slk_set                 screen
                           slk_touch               screen
                           slk_wset                screen
                           standend                window
                           standout                window
                           start_color             screen
                           stdscr                  screen (readonly)
                           strcodes                global (readonly)
                           strfnames               global (readonly)

                           strnames                global (readonly)
                           subpad                  window
                           subwin                  window
                           syncok                  window
                           term_attrs              screen
                           termattrs               screen
                           termname                terminal
                           tgetent                 global
                           tgetflag                global
                           tgetnum                 global
                           tgetstr                 global
                           tgoto                   global
                           tigetflag               terminal
                           tigetnum                terminal
                           tigetstr                terminal
                           timeout                 window (stdscr)
                           touchline               window
                           touchwin                window
                           tparm                   global (static data)
                           tputs                   screen
                           trace                   global (static data)
                           ttytype                 screen (readonly)
                           typeahead               screen
                           unctrl                  screen
                           unget_wch               screen (input-operation)
                           ungetch                 screen (input-operation)
                           ungetmouse              screen (input-operation)
                           untouchwin              window
                           use_default_colors      screen
                           use_env                 global (static data)
                           use_extended_names      global (static data)
                           use_legacy_coding       screen
                           use_screen              global locks(screenlist, screen)
                           use_window              global locks(windowlist, window)
                           vid_attr                screen
                           vid_puts                screen
                           vidattr                 screen
                           vidputs                 screen
                           vline                   window (stdscr)
                           vline_set               window (stdscr)
                           vw_printw               window
                           vw_scanw                screen
                           vwprintw                window
                           vwscanw                 screen
                           wadd_wch                window
                           wadd_wchnstr            window
                           wadd_wchstr             window
                           waddch                  window
                           waddchnstr              window
                           waddchstr               window
                           waddnstr                window
                           waddnwstr               window
                           waddstr                 window
                           waddwstr                window
                           wattr_get               window
                           wattr_off               window
                           wattr_on                window
                           wattr_set               window
                           wattroff                window
                           wattron                 window
                           wattrset                window
                           wbkgd                   window
                           wbkgdset                window
                           wbkgrnd                 window
                           wbkgrndset              window

                           wborder                 window
                           wborder_set             window
                           wchgat                  window
                           wclear                  window
                           wclrtobot               window
                           wclrtoeol               window
                           wcolor_set              window
                           wcursyncup              screen (affects window plus parents)
                           wdelch                  window
                           wdeleteln               window
                           wecho_wchar             window
                           wechochar               window
                           wenclose                window
                           werase                  window
                           wget_wch                screen (input-operation)
                           wget_wstr               screen (input-operation)
                           wgetbkgrnd              window
                           wgetch                  screen (input-operation)
                           wgetn_wstr              screen (input-operation)
                           wgetnstr                screen (input-operation)
                           wgetparent              window
                           wgetscrreg              window
                           wgetstr                 screen (input-operation)
                           whline                  window
                           whline_set              window
                           win_wch                 window
                           win_wchnstr             window
                           win_wchstr              window
                           winch                   window
                           winchnstr               window
                           winchstr                window
                           winnstr                 window
                           winnwstr                window
                           wins_nwstr              window
                           wins_wch                window
                           wins_wstr               window
                           winsch                  window
                           winsdelln               window
                           winsertln               window
                           winsnstr                window
                           winsstr                 window
                           winstr                  window
                           winwstr                 window
                           wmouse_trafo            window
                           wmove                   window
                           wnoutrefresh            screen
                           wprintw                 window
                           wredrawln               window
                           wrefresh                screen
                           wresize                 window locks(windowlist)
                           wscanw                  screen
                           wscrl                   window
                           wsetscrreg              window
                           wstandend               window
                           wstandout               window
                           wsyncdown               screen (affects window plus parents)
                           wsyncup                 screen (affects window plus parents)
                           wtimeout                window
                           wtouchln                window
                           wunctrl                 global (static data)
                           wvline                  window
                           wvline_set              window

RETURN VALUE
       These functions all return TRUE or FALSE, except as noted.

NOTES
       Both a macro and a function are provided for each name.

PORTABILITY
       These routines are specific to ncurses.  They were not supported on Version 7, BSD or System V imple-mentations. implementations.
       mentations.   It  is  recommended  that any code depending on ncurses extensions be conditioned using
       NCURSES_VERSION.

SEE ALSO
       curses(3X), curs_opaque (3X)



                                                                                            curs_threads (3X)

Сообщение о проблемах

Способ сообщить о проблеме с этой страницей руководства зависит от типа проблемы:

Ошибки содержания
Ошибки отчета в содержании этой документации со ссылками на отзыв ниже.
Отчеты об ошибках
Сообщите об ошибках в функциональности описанного инструмента или API через Генератор отчетов Ошибки.
Форматирование проблем
Отчет, форматирующий ошибки в интерактивной версии этих страниц со ссылками на отзыв ниже.