Boost logo

Boost :

Subject: Re: [boost] Boost.Chain over at Github
From: Vicente Botet (vicente.botet_at_[hidden])
Date: 2011-03-19 04:37:40


Dean Michael Berris wrote:
>
> On Fri, Mar 18, 2011 at 6:37 PM, Mathias Gaunard
> <mathias.gaunard_at_[hidden]> wrote:
>> On 18/03/2011 03:49, Dean Michael Berris wrote:
>>
>>> That's fine, I deal with lots of network I/O as part of the HTTP
>>> implementation in cpp-netlib and it would be really good if I can step
>>> away from std::string from the internals to support larger strings
>>> without having to induce too much fragmentation when concatenating
>>> strings. The intention is to have suitably efficient (not necessarily
>>> optimal) string representations for code that need to deal with both
>>> small and potentially huge strings.
>>
>> Then you need a string which layout is compatible with the vectored I/O
>> API
>> provided by the system (readv/writev on POSIX,
>> ReadFileScatter/WriteFileGather on Win32).
>>
>
> Thanks Mathias, yes the data storage structure I'm looking to use will
> mostly obtained with either by mmap'ing an anonymous segment or
> through posix_malign(...) -- not sure of the Windows equivalent. The
> storage blocks would basically be chunks in memory, and I'm looking to
> make a chain a Boost.Asio compatible ConstBufferSequence.
>
>

Hi,

I would like to see the requirements for ConstBufferSequence be relaxed. In
particular

X::value_type --- T --- T meets the requirements for
ConvertibleToConstBuffer.

I would like it uses a model of ConstBuffer and Mutable Buffer instead of
forcing a conversion to the specific class cont_buffer.

The ContBuffer, Mutable requirements could be resumed to the ability to get
the size and the (const/mutable) address either as member functions or as
free functions.

This relaxation on the requirements will avoid unneeded conversions.

It seems to me that the user code will not inpact :). However the ASIO code
will need to be changed in some places :(

Best,
Vicente

--
View this message in context: http://boost.2283326.n4.nabble.com/Boost-Chain-over-at-Github-tp3384959p3389266.html
Sent from the Boost - Dev mailing list archive at Nabble.com.

Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk