|
Boost : |
Subject: Re: [boost] Synapse library review starts today December 2
From: Emil Dotchevski (emildotchevski_at_[hidden])
Date: 2016-12-13 15:19:57
I've made a small addition to Synapse, the ability to post arbitrary
function objects on thread_local_queues, to be executed synchronously at
the time poll is called. See http://zajo.github.io/boost-synapse/post.html.
This feature allows critical worker threads to minimize the amount of time
they consume by offloading expensive non-critical computations to another,
non-critical thread. This also removes the need for synchronization, since
the queued functions are executed synchronously in the thread that owns the
thread_local_queue object.
Emil
On Fri, Dec 2, 2016 at 6:19 AM, Edward Diener <eldiener_at_[hidden]>
wrote:
> The formal review of the Synapse library by Emil Dotchevski starts today,
> December 2, and is scheduled to continue through December 11. This gives
> two full weekends and the week in between for the formal review.
>
> Synapse is a signal programming library, similar to Boost Signals2 and the
> signals-slots system in Qt. The main difference is that Synapse is
> non-intrusive: the address of any object of any static type whatsoever can
> be passed to synapse::emit to emit a signal. This makes it possible to emit
> Synapse signals from objects of third-party types as well as system objects
> (e.g. standard FILE pointers, HWNDs, etc.) or any other object that can be
> converted to a pointer.
>
> The library has been formatted to fit the Boost directory and namespace
> structure. To get Synapse, clone
> 'https://github.com/zajo/boost-synapse.git' into a directory called
> 'synapse' under your boost/libs directory.
>
> See the tutorial at
> 'http://zajo.github.io/boost-synapse/Tutorial.html', or read full
> documentation at 'http://zajo.github.io/boost-synapse/index.html'. You
> can also view the documentation locally from your clone of the library at
> boost/libs/synapse/doc/index.html.
>
> Review guidelines
> =================
>
> Reviews should be submitted to the developer list (boost_at_[hidden]),
> preferably with '[synapse]' in the subject. Or if you don't wish to for
> some reason or are not subscribed to the developer list you can send them
> privately to me at 'eldiener at tropicsoft dot com'. If so, please let me
> know whether or not you'd like your review to be forwarded to the list.
>
> For your review you may wish to consider the following questions:
>
> - What is your evaluation of the design?
> - What is your evaluation of the implementation?
> - What is your evaluation of the documentation?
> - What is your evaluation of the potential usefulness of the
> library?
> - Did you try to use the library? With what compiler? Did you
> have any problems?
> - How much effort did you put into your evaluation? A glance? A
> quick reading? In-depth study?
> - Are you knowledgeable about the problem domain?
>
> And finally, every review should attempt to answer this question:
>
> - Do you think the library should be accepted as a Boost library?
>
> Be sure to say this explicitly so that your other comments don't obscure
> your overall opinion.
>
> Even if you do not wish to give a full review any technical comment
> regarding the library is welcome as part of the review period and will help
> me as the review manager decide whether the library should be accepted as a
> Boost library. Any questions about the use of the library are also welcome.
>
> I encourage all programmers with an interest or knowledge of signal/slot
> processing to be part of the review or discussion of the Synapse library as
> your time permits.
Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk