curs_refresh(3)

명칭
refresh, wrefresh, wnoutrefresh, doupdate, redrawwin, wredrawln - refresh ncurses windows and lines

서식
#include <ncurses.h> int refresh(void) ;
int wrefresh(WINDOW *win) ;
int wnoutrefresh(WINDOW *win) ;
int doupdate(void) ;
int redrawwin(WINDOW *win) ;
int wredrawln(WINDOW *win, int beg_line, int num_lines) ;

해설
단말에의 실제의 출력을 얻기 위해서(때문에)는, refresh routine와 wrefresh routine ( 또는 wnoutrefresh (와)과 doupdate ) (을)를 호출할 필요가 있습니다. 다른 routine는 데이터 구조를 조작할 뿐(만큼)이기 때문입니다. routine wrefresh (은)는, 이름 첨부 윈도우를 물리적인 단말 화면에 카피해, 그 때, 최적화를 실시하기 위해서(때문에), 이미 거기에 있는 것을 고려합니다. refresh routine도 같고, 디폴트의 윈도우로서 stdscr (을)를 사용합니다. leaveok 하지만 유효하게 되어 있는 경우를 제외해, 단말의 물리 커서는 그 윈도우용의 커서의 위치에 남겨집니다. wnoutrefresh routine와 doupdate routine에 의해, wrefresh 단독으로보다 효율적으로 복수의 갱신을 할 수 있습니다. 모든 윈도우 구조에 가세해, ncurses (은)는, 단말 화면을 나타내는 다음의 2 개의 데이터 구조를 보관 유지합니다. 물리 화면은, 화면상에 실제로 있는 것을 기술해, 가상 화면은, 프로그래머가 화면에 표시하고 싶은 것을 기술합니다. routine wrefresh (은)는, 최초로 wnoutrefresh (을)를 호출하는 것으로 기능합니다. wnoutrefresh (은)는, 이름 첨부 윈도우를 가상 화면에 카피하고 나서 doupdate (을)를 호출합니다. doupdate (은)는, 가상 화면을 물리 화면과 비교해, 실제의 갱신을 실시합니다. 프로그래머가 몇개의 윈도우를 한 번에 출력하는 것을 희망한다 경우는, wrefresh (을)를 계속해 몇번이나 호출하면(자), wnoutrefresh (와)과 doupdate 하지만 교대로 불려 가게 되어, 몇개의 출력 burst가 화면에 출력됩니다. 각 윈도우에 대해 wnoutrefresh (을)를 최초로 호출하면(자), doupdate (을)를 한 번 호출하는 것이 가능하게 되어, 1 회의 출력의 burst만을 하는 결과가 되어, 송신되는 합계 캐릭터는 적게 되어, 사용된다 CPU 시간은 짧아집니다. wrefresh 에의 win 인수가 글로벌 변수 curscr 인 경우, 화면은 즉석에서 클리어 되어 제로로부터 재묘화 됩니다. redrawwin routine는, ncurses 에, 몇개의 화면행이 파손하고 있어, 그것들을 폐기한 다음에, 그러한 위에 무엇인가를 기입하는 것을 나타냅니다. 이러한 routine는 에디터와 같은 프로그램용으로 사용할 수 있습니다. 이것은, 화면의 일부 또는 화면 전체를 재묘화 하는 명령을 필요로 합니다. routine redrawln (분)편이 redrawwin 보다 바람직하게 있습니다. redrawwin 그럼, 통신회선에 노이즈 (이)가 있는 것이 있어, 윈도우 전체를 재묘화 하면(자), 한층 더 많은 통신 노이즈를 받을 가능성이 있습니다. 몇개의 행만을 재묘화 하면(자), 그것들이 손상 없고 표시될 가능성이 있습니다.

반환값
모든 routine가, 처리 실패하면(자) 정수 ERR (을)를 돌려줍니다. 처리가 정상적으로 완료했을 경우는, ERR 이외의 정수치를 돌려줍니다.

주석
refresh (와)과 redrawwin (은)는 매크로일 가능성이 있는 것에 주의해 주세요.

관련 항목
ncurses(3), curs_outopts(3)