[Twisted-Python] New C++ implementation of Deferreds

V S P toreason at fastmail.fm
Fri Jan 30 03:09:00 EST 2009


Hi, this is very interesting 
( am I currently testing out C++ web server (using boost asio) called
pion
to see if can suit my needs (it is a multi-threaded async IO generic
server and boost asio uses the best async APIs for each OS (including
kques for freebsd for example).


I looked at the example threads.cpp -- but could not figure out -- how
would it integrate with Twisted ? 

thanks

On Thu, 29 Jan 2009 12:21:36 -0800, "Tom Cocagne"
<tom.cocagne at gmail.com> said:
>     The question of whether anyone had developed a C++ implementation of
> Twisted's Deferreds has cropped up on this list several times over the
> last
> few years. To date, I've unfortunately been forced to sit on an
> implementation I developed several years ago for the Department of
> Defense.
> Due to some rather draconian IP & security policies, it's taken an
> exceptionally long time to get the code released. I'm happy to announce
> though that I finally managed to obtain release authorization for it and
> that the code now has a new home on Sourceforge.
> 
>     As C++ has differing language features, the API of the C++ deferreds
> isn't identical to those of Twisted's but most of the key concepts mapped
> over pretty well. Additionally, this implementation has a few design
> extensions to facilitate the development multi-threaded C++ applications.
> The multi-threaded aspect grew almost accidentally out of the original
> single-threaded design but, since then, it has proven to be
> extraordinarily
> useful for simplifying several multi-threaded applications I've worked
> on.
> 
>     The implementation of the library is, however, rather complex. In
>     large
> part, this is due to the effort required to work around the inherent
> inflexibility of the C++ type system. The Function, Bind, and
> Meta-Programming libraries found in Boost have gone a long way towards
> simplify the implementation though (my original Loki-based attempt was
> almost incomprehensible even to me ;-). The library is fully documented
> though so as long as you're reasonably comfortable with C++ templates, it
> should be understandable.
> 
>     So far, the library has only been exposed to a handful of individuals
> for review. I'd be interested to hear the comments anyone has about the
> design and/or implementation approach. The code is available at:
> 
>         http://deferred.svn.sourceforge.net/viewvc/deferred/
> 
>     Cheers,
> 
>     Tom
-- 
  V S P
  toreason at fastmail.fm

-- 
http://www.fastmail.fm - Accessible with your email software
                          or over the web





More information about the Twisted-Python mailing list