1994 1995 1996 1997 1998 1999 2000 2001 2002 2003 2004 2005 2006 2007 2008 2009 2010 2011 2012 2013 2014 2015 2016 2017 2018 2019 <2020> 2021 2022 2023 2024 2025 | Index | 1994 1995 1996 1997 1998 1999 2000 2001 2002 2003 2004 2005 2006 2007 2008 2009 2010 2011 2012 2013 2014 2015 2016 2017 2018 2019 <2020> 2021 2022 2023 2024 2025 |
<== Date ==> | <== Thread ==> |
---|
Subject: | Re: Filtering messages print on the IOC shell console |
From: | "Johnson, Andrew N. via Tech-talk" <tech-talk at aps.anl.gov> |
To: | "Rivers, Mark L." <rivers at cars.uchicago.edu> |
Cc: | EPICS tech-talk <tech-talk at aps.anl.gov> |
Date: | Thu, 9 Apr 2020 22:46:36 +0000 |
Sorry guys, I really meant to reply to this thread last week, but it’s been pretty crazy – presumably everyone now has time to work on their list of “things to fix” and this results in more tech-talk and private conversations than normal.
I want to see if the garbling goes away if I do this in the startup script: Mark, that is worth trying; here’s how:
fflush(epicsGetStderr()) If it works we should at least add an equivalent flush to the iocsh code after it runs each command. I'm not sure if we can do anything about the VxWorks target shell, maybe Freddie’s setvbuf() idea could be made to work but I haven’t looked into
that – VxWorks should have setvbuf() since it was in C89.
Messages that are printed using errlogPrintf() or the epicsPrintf synonym should already be getting flushed immediately because there’s a flush built into the errlogPrintf() code, but any messages printed using fprintf(stderr, …) could benefit
from another flush.
- Andrew
--
Complexity comes for free, simplicity you have to work for.
|