|
Boost Users : |
Subject: Re: [Boost-users] [boost-users] [bind][function] - too many copies
From: Christian Schladetsch (christian.schladetsch_at_[hidden])
Date: 2010-10-07 11:53:48
With such a hefty and obnoxious signature, this is my response.
On Fri, Oct 8, 2010 at 1:53 AM, Lorimer, Stephen
<stephen.lorimer_at_[hidden]>wrote:
> For a given member function of the form void foo::f0(), passing this to
> boost bind results in the class instance being copied 7 times.
>
>
>
> Storing the result of bind in boost function incurs another 11 copies
>
>
>
> (code and results are here: http://boost.codepad.org/6jBmoKuj)
>
>
>
> Using tr1::bind and function has slightly better results, but still not
> ideal: Doing just tr1::bind results in the class instance being copied 4
> times.
>
>
>
> Storing the result of bind in tr1 function incurs another 3 copies
>
>
>
> (code and results are here: http://boost.codepad.org/w1EV6JBY)
>
>
>
> Am I right in saying this is because boost::bind uses normal templates
> while tr1::bind uses variadic templates?
>
>
>
> Either way this is not very efficient. Is there a way to improve this?
> ------------------------------
> This message w/attachments (message) is intended solely for the use of the
> intended recipient(s) and may contain information that is privileged,
> confidential or proprietary. If you are not an intended recipient, please
> notify the sender, and then please delete and destroy all copies and
> attachments, and be advised that any review or dissemination of, or the
> taking of any action in reliance on, the information contained in or
> attached to this message is prohibited.
> Unless specifically indicated, this message is not an offer to sell or a
> solicitation of any investment products or other financial product or
> service, an official confirmation of any transaction, or an official
> statement of Sender. Subject to applicable law, Sender may intercept,
> monitor, review and retain e-communications (EC) traveling through its
> networks/systems and may produce any such EC to regulators, law enforcement,
> in litigation and as required by law.
> The laws of the country of each sender/recipient may impact the handling of
> EC, and EC may be archived, supervised and produced in countries other than
> the country in which you are located. This message cannot be guaranteed to
> be secure or free of errors or viruses.
>
>
Boost-users list run by williamkempf at hotmail.com, kalb at libertysoft.com, bjorn.karlsson at readsoft.com, gregod at cs.rpi.edu, wekempf at cox.net