Boost logo

Boost Users :

From: Yuval Ronen (ronen_yuval_at_[hidden])
Date: 2007-06-16 13:43:19


Christopher Kohlhoff wrote:
> Yuval Ronen wrote:
>> 1. The "Proactor" page has Advantages/Disadvantages section, but it
>> doesn't specify in comparison to what (advantages and disadvantages are
>> always compared to something). I'm getting the impression that it's
>> compared to the Reactor approach. Is this correct?
>
> Actually it is compared to both the Reactor and thread-per-connection approaches.

One of the advantages there is "Portability". Is the proactor approach
more portable than reactor or thread-per-connection? I might even go
further and say that portability is a non-issue because it's a
pre-condition. All approaches are required to be portable, and an
approach that isn't, is automatically discarded. So it's "obvious" that
all finalists are portable, and that includes reactor and
thread-per-connection. Isn't it?

>> 3. ... So I guess that if I
>> resolve() rather than async_resolve(), then no thread is created, and
>> the actual resolving is done in the thread that called resolve()?
>
> That's also correct.

I'm a little uneasy by the fact that even is such case I need an
io_service. If I'm not doing asynchronous I/O, why would I need an
asynchronous service manager? This topic might have been discussed
during the review, which I'm sorry I didn't follow, or it might be
already explained in the docs. I'd appreciate any link.


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