[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Undocumented feature: Unnamed fifo '<(:)'
From: |
Eli Schwartz |
Subject: |
Re: Undocumented feature: Unnamed fifo '<(:)' |
Date: |
Sun, 28 Jun 2020 17:27:47 -0400 |
User-agent: |
Mozilla/5.0 (X11; Linux x86_64; rv:68.0) Gecko/20100101 Thunderbird/68.9.0 |
On 6/28/20 4:21 PM, Robert Elz wrote:
> I noticed that explanation, but like Dennis, I fail to see how the
> complicated version does any more than pretend there are less forks
> happening. Was the speed of this actually measured, and if so, where
> are the comparative results?
Sure, and that can be pointed out, but that's a long way away from what
Dennis actually said, which is "why not just use a function", implying
that the use or not of a function is relevant here.
> Either way, to make the conversion, the date command needs to be run
> (in the complicated version, setbuf as well, which means an extra exec
> at least) - running a command means a fork, and all we have to start
> with is bash, so bash needs to fork to run date, each time it needs
> to run.
>
> What evidence is there that the complicated way, with all of its extra
> file opens, etc, is faster than the simple way, or involves less forks?
IIRC bash will (if it can) optimize out $(cmd) to fork+exec cmd, rather
than fork bash, then fork+exec cmd. Perhaps the OP is assuming that the
fifo dance will result in one fork, rather than two?
Pointing out this flawed assumption is a useful data point, saying "why
not just use a function" is not. (In fact, I'd assume the $(function) is
actively a bad idea as it would prevent bash from optimizing out the
$(/usr/bin/date) fork.)
--
Eli Schwartz
Arch Linux Bug Wrangler and Trusted User
signature.asc
Description: OpenPGP digital signature
- Undocumented feature: Unnamed fifo '<(:)', felix, 2020/06/28
- Re: Undocumented feature: Unnamed fifo '<(:)', Oğuz, 2020/06/28
- Re: Undocumented feature: Unnamed fifo '<(:)', Pierre Gaston, 2020/06/28
- Re: Undocumented feature: Unnamed fifo '<(:)', Greg Wooledge, 2020/06/29
- Re: Undocumented feature: Unnamed fifo '<(:)', Chet Ramey, 2020/06/30