From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 20934 invoked by alias); 6 Jan 2015 19:06:34 -0000 Mailing-List: contact gdb-patches-help@sourceware.org; run by ezmlm Precedence: bulk List-Id: List-Subscribe: List-Archive: List-Post: List-Help: , Sender: gdb-patches-owner@sourceware.org Received: (qmail 20925 invoked by uid 89); 6 Jan 2015 19:06:34 -0000 Authentication-Results: sourceware.org; auth=none X-Virus-Found: No X-Spam-SWARE-Status: No, score=-2.6 required=5.0 tests=AWL,BAYES_00,RCVD_IN_DNSWL_NONE,SPF_SOFTFAIL autolearn=no version=3.3.2 X-HELO: mtaout20.012.net.il Received: from mtaout20.012.net.il (HELO mtaout20.012.net.il) (80.179.55.166) by sourceware.org (qpsmtpd/0.93/v0.84-503-g423c35a) with ESMTP; Tue, 06 Jan 2015 19:06:32 +0000 Received: from conversion-daemon.a-mtaout20.012.net.il by a-mtaout20.012.net.il (HyperSendmail v2007.08) id <0NHR00J00RO9XO00@a-mtaout20.012.net.il> for gdb-patches@sourceware.org; Tue, 06 Jan 2015 21:06:29 +0200 (IST) Received: from HOME-C4E4A596F7 ([87.69.4.28]) by a-mtaout20.012.net.il (HyperSendmail v2007.08) with ESMTPA id <0NHR00JBCRQTNZA0@a-mtaout20.012.net.il>; Tue, 06 Jan 2015 21:06:29 +0200 (IST) Date: Tue, 06 Jan 2015 19:06:00 -0000 From: Eli Zaretskii Subject: Re: [PATCH] Speed up "gdb -tui" output In-reply-to: To: Doug Evans Cc: gdb-patches@sourceware.org Reply-to: Eli Zaretskii Message-id: <83sifn7mpt.fsf@gnu.org> References: <83zj9v7urq.fsf@gnu.org> X-IsSubscribed: yes X-SW-Source: 2015-01/txt/msg00084.txt.bz2 > Date: Tue, 6 Jan 2015 10:37:13 -0800 > From: Doug Evans > Cc: gdb-patches > > bash$ gdb -tui > (gdb) file foo > > At this point I've hit return but I don't see anything printed. > > pause pause pause > > and then finally I see all the output: > > Reading symbols from foo...done. > mumble ... > (gdb) If this is the only place where this matters, we could break that line in two: Reading symbols from foo... Done reading symbols from foo. Or maybe we could also call wrefresh when we see 3 consecutive dots, assuming that these are the cases where a prolonged operation is under way. > Another possibility would be to do the string -> char -> string > processing differently. String printing utilities could accumulate > what they want to print and send the output in chunks instead > of characters. > Then tui_puts could get real strings instead of always getting > { char, '\0' }, and maybe that would be enough. This will hit the same problem: how to know when to stop accumulating and flush it out.