Subject: Re: [boost] Boost.asio avoid the use of pipe
From: Niall Douglas (s_sourceforge_at_[hidden])
Date: 2014-04-03 18:30:50
On 4 Apr 2014 at 0:11, Thomas Heller wrote:
> >To be honest, the easiest path overall is to write your own pipe
> >implementation using whatever the native OS provides. One solution I
> >have used in the past is a socket running over loopback, it works and
> >probably isn't that much slower than a proper pipe implementation :)
> Sounds like a plan... Do you have example code lying around?
Not readily to hand. I wrote that pipe() emulation back when I was
still writing for RISC-OS which had sockets but not pipes at that
time. That was back in the 1990s. All that code lives on a SCSI hard
drive I haven't turned on in well over a decade, nor actually do I
even have the means to plug it into anything any more.
I do remember there was some funny semantics problem which meant I
had to use two socket ports instead of one per pipe to emulate the
right behaviour. That could have been a broken sockets library of
course. I'd also recommend looking into OOB support, if your micro-OS
supports OOB socket data it lets you replicate pipe semantics
perfectly, if not disabling Nagle's on a standard TCP stream is the
best you can do.
-- Currently unemployed and looking for work in Ireland. Work Portfolio: http://careers.stackoverflow.com/nialldouglas/
Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk