$include_dir="/home/hyper-archives/boost-users/include"; include("$include_dir/msg-header.inc") ?>
From: Peter Dimov (pdimov_at_[hidden])
Date: 2007-02-23 19:01:16
Timmo Stange wrote:
> Peter Dimov wrote:
>
>> Such an approach may turn out to not be acceptable, though, given
>> that the majority of signal benchmarks place heavy emphasis on
>> operator() calls.
>
> I sense some bitterness there ;).
No, not really. I have no horse in this race. I take the benchmarks at face
value; they indicate that there is obviously interest in an implementation
with a fast operator().
I was never particularly fond of providing dual components with thread-safe
and "thread-unsafe" interfaces (for the various definitions of that.) The
ideal scenario, in my mind, is to provide a single component that is still
as overhead-free as possible in the single-threaded scenario. Unfortunately,
the straightforward approach of copying a vector<shared_ptr> doesn't achieve
that goal, but I _think_ that it's possible to implement the same interface
in a more efficient way, using copy on write and versioning tricks. Maybe
Frank's implementation already does this.